Jump to content


Photo

Listando Em 4 Colunas


  • Faça o login para participar
9 replies to this topic

#1 ScraX

ScraX

    12 Horas

  • Usuários
  • 243 posts
  • Sexo:Masculino
  • Localidade:Varginha, Minas Gerais
  • Interesses:Fazer site, progamar ... apreder coisas novas nesse ramo...

Posted 30/07/2005, 02:42

Ae galera ...

Ae to precisando listar algo em 4 colunas ...

1 2 3 4
5 6 7 8
9 10 11 12

Eu fiz um codigo aki ... mas pela analise logica se acabar os smiles antes da 4 coluna ele ira dar errado pois nao tera o </tr> .... olhem:

<?php
      // A consulta esta feita mais acima e esta tudo correto

coluna==1;

while($smiles = mysql_fetch_assoc($resultado)){
      if($coluna==1){
          echo "<tr>";
      }

      echo "<td valign='top' align='center'>";
      echo "<img src='../../smiles/".$smiles["nome"].">";
      echo "</td>";

      if($coluna==4){
          echo "</tr>";
      }

      if($coluna==1 || $coluna==2 || $coluna==3){
          $coluna++;
      }
      else{
          $coluna==1;
      }
}
?>



Se alguem puder me da uma ajudinah eu agradeço ...

Fuiz ...
ScraX.dEsiGNeR

Fireworks - Dreamweaver - Flash - PHP - JavaScript - AJAX
HTML - XML - CSS - Tableless

#2 kandrade

kandrade

    Turista

  • Usuários
  • 38 posts
  • Sexo:Não informado
  • Localidade:Palmas-TO
  • Interesses:PHP - LINUX - Flash - Gimp

Posted 30/07/2005, 07:56

sua variável $coluna não está sendo inicializada corretamente.....faça assim:

$coluna=1;

== é usado para comparações e = é usado para atribuições!!!!

Mas Deus dá prova do seu amor para conosco, em que, quando éramos ainda pecadores, Cristo morreu por nós.


>> Rm 5:8


#3 Rauffer

Rauffer

    Normal

  • Usuários
  • 76 posts
  • Sexo:Masculino
  • Localidade:Garopaba - SC

Posted 30/07/2005, 14:02

$coluna=1;

echo "<table border='0' cellpadding='0' cellspacing='0'>\n";

echo "<tr>\n";

while($smiles = mysql_fetch_assoc($resultado)){

      echo "<td valign='top'><img src='../../smiles/$smiles['nome']'></td>\n";

      if(($coluna%4) ==  0){

          echo "\n</tr>\n<tr>\n";

      }

   $coluna ++;

}

echo "</tr>\n</table>";

Bacharel em Sistemas de Informação

#4 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 30/07/2005, 14:06

Exatamente como o Rauffer postou; use módulo (%) para terminar o table row ( <tr> ). Para facilitar, organize-se melhor, separe o HTML do PHP ... ;)

[]’s :DAté mais

#5 ScraX

ScraX

    12 Horas

  • Usuários
  • 243 posts
  • Sexo:Masculino
  • Localidade:Varginha, Minas Gerais
  • Interesses:Fazer site, progamar ... apreder coisas novas nesse ramo...

Posted 30/07/2005, 17:42

Ok ...

kandrade .... eu to ligado no que vc falou ... foi falta de atenção mesmo.

Mas mesmo assim ja ta td resolvido...

Obrigado a todos ai..


Fuizzzz
ScraX.dEsiGNeR

Fireworks - Dreamweaver - Flash - PHP - JavaScript - AJAX
HTML - XML - CSS - Tableless

#6 GM_Tek

GM_Tek

    Eh-Nois =D

  • Banidos
  • PipPipPip
  • 212 posts
  • Sexo:Não informado
  • Localidade:balneário camboriú - sc
  • Interesses:Aprender php =D

Posted 30/07/2005, 19:14

dica:.
para que imprimir html?
use:

...
$coluna=1;
?>
<table border='0' cellpadding='0' cellspacing='0'>
<tr>
<?
while($smiles = mysql_fetch_assoc($resultado)){
     echo "<td valign='top'><img src='../../smiles/$smiles['nome']'></td>\n";
     if(($coluna%4) ==  0){
?>
</tr><tr>
<?
     }
  $coluna ++;
}
?>
</tr>\n</table>
bom... cada um faz como quiser... mas eu sempre que da para nao usar o php eu fexo ?> e coloco o que tem em html e <? abro denovo dps;...

#7 victorpfm

victorpfm

    Expert

  • Usuários
  • 566 posts
  • Sexo:Masculino

Posted 30/07/2005, 19:31

Esse que você fez ai em cima ta bem bagunçado hein ??
Usando o print fica bem mais simples e agradável de se ler.

A maneira mais simples seria:

$i   = 0;
$col = 4;

print "<table>";
while (...) {
    print $i%$col == 0 ? "<tr><td>" : <td>";
    print $resultado;
    print $i%$col == ($col-1) ? "</td></tr>" : "</td>";
    $i++;
}
print "</table>";


#8 redstyle

redstyle

    Expert

  • Usuários
  • 540 posts
  • Sexo:Masculino

Posted 25/05/2006, 16:32

Ressuscitando o tópico. :D

Com esse código
<?
$i   = 0;
$col = 4;

print "<table border=\"1\">";
while ($i < 10) {
   print $i%$col == 0 ? "<tr><td>" : "<td>";
   print $i;
   print $i%$col == ($col-1) ? "</td></tr>" : "</td>";
   $i++;
}
print "</table>";
?>

os 2 últimos aparecem na esquerda e seria bom colocar centralizado ajeitando com um colspan ou uma tabela aninhada.

E como se faria isso?

Falowz

Conheça meu blog para Aprender Laravel (Framework PHP)


#9 viniciusjau

viniciusjau

    Veterano

  • Usuários
  • 1492 posts
  • Sexo:Masculino
  • Localidade:Jaú
  • Interesses:Web Designer em Geral

Posted 21/06/2006, 10:36

$coluna=1;
echo "<table border='0' cellpadding='0' cellspacing='0'>\n";
echo "<tr>\n";
while($smiles = mysql_fetch_assoc($resultado)){
	  echo "<td valign='top'><img src='../../smiles/$smiles['nome']'></td>\n";
	  if(($coluna%4) ==  0){
		  echo "\n</tr>\n<tr>\n";
	  }
   $coluna ++;
}
echo "</tr>\n</table>";


Ressuscitando novamente...

para funfar aqui eu tive que fazer assim:

echo "<td valign='top'><img src='../../smiles/" . $smiles['nome'] . "'></td>\n";



#10 nfgMutaum

nfgMutaum

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado

Posted 31/01/2010, 17:21

Pessoal... não to conseguindo fazer no meu...

esta da seguinte maneira:


<?php
//*********************************************************************
// CONFIGURAÇÃO DE BANCO DE DADOS
//*********************************************************************
$con = mysql_connect('localhost','root','');
$bd = mysql_select_db('bd');
?>
<span class="style20">
<?php
$busca = mysql_query("SELECT * FROM __circuito order by nome");
while($anu = mysql_fetch_array($busca)){
$id = $anu["id"];
$nome = $anu["nome"];
?>
</span></p><table width="400" border="0">
<?php
$cont = 1;
for($i = 1; $i <= 1; $i++)
{
if($cont == 1)
{
print("<tr>");
}
?>
<td><img src="cadastro/fotos/thumb_<?=$anu['imagem'];?>" /><br />
<span class="style22">
<?=$nome?>
</span></td>
<?php
if($cont == 1)
{
print("</tr>");
$cont = 1;
} else
{
$cont++;
}
}
?>
<?php
}

?></table>
<p><span class="style20">

</span>




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq