Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Vidalouka

Resultado do Recordset em 2 colunas

Recommended Posts

O que você quer é exibir o resultado de uma consulta ao banco, que retorna os registros de um campo, em duas colunas de uma tabela html ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que você quer é exibir o resultado de uma consulta ao banco, que retorna os registros de um campo, em duas colunas de uma tabela html ?

isso mesmo colega.. voce sabe como?

O que você quer é exibir o resultado de uma consulta ao banco, que retorna os registros de um campo, em duas colunas de uma tabela html ?

isso mesmo colega.. voce sabe como?
tipo esse link aquihttp://www.strdesign.com.br/strimoveis/imo...amp;lista=Fotos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Por exemplo:

<?php$html = NULL;$i = 0;$sql = Array('banana', 'maça', 'pêra', 'morango', 'abacate', 'caju', 'côco', 'melancia', 'uva', 'laranja', 'acerola');foreach ($sql AS $x){	if ($i%2 == 0)	{		$html .= "<tr>					<td>$x</td>\n";	}	else	{		$html .= "<td>$x</td>\n</tr>\n";	}	$i++;}if (sizeof($sql) % 2 > 0){	$html .= "<td></td>\n</tr>\n";}?><table border="1">	<thead>		<tr>			<td colspan="2"></td>		</tr>	</thead>	<tfoot>		<tr>			<td colspan="2"></td>		</tr>	</tfoot>	<tbody>		<?php		echo $html;		?>	</tbody></table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Por exemplo:

<?php$html = NULL;$i = 0;$sql = Array('banana', 'maça', 'pêra', 'morango', 'abacate', 'caju', 'côco', 'melancia', 'uva', 'laranja', 'acerola');foreach ($sql AS $x){	if ($i%2 == 0)	{		$html .= "<tr>					<td>$x</td>\n";	}	else	{		$html .= "<td>$x</td>\n</tr>\n";	}	$i++;}if (sizeof($sql) % 2 > 0){	$html .= "<td></td>\n</tr>\n";}?><table border="1">	<thead>		<tr>			<td colspan="2"></td>		</tr>	</thead>	<tfoot>		<tr>			<td colspan="2"></td>		</tr>	</tfoot>	<tbody>		<?php		echo $html;		?>	</tbody></table>
agora como eu faço para buscar o resultado da query e jogar os dados dentro da array???meu cod
<?php require_once('Connections/conexao.php'); ?><?phpmysql_select_db($database_conexao, $conexao);$comerciais = mysql_query("SELECT * FROM comerciais") or die(mysql_error());$num_linhas = mysql_num_rows($comerciais);?><?php$html = NULL;$i = 0;$sql = Array('banana', 'maça', 'pêra', 'morango', 'abacate', 'caju', 'côco', 'melancia', 'uva', 'laranja');foreach ($sql AS $x){	if ($i%2 == 0)	{		$html .= "<tr>					<td>$x</td>\n";	}	else	{		$html .= "<td>$x</td></tr>\n";	}	$i++;}?><table border="1">	<thead>		<tr>			<td colspan="2"></td>		</tr>	</thead>	<tfoot>		<tr>			<td colspan="2"></td>		</tr>	</tfoot>	<tbody>		<?php		echo $html;		?>	</tbody></table><?phpmysql_free_result($comerciais);?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

é só trocar o foreach por mysql_fetch_assoc:

 

while ($x = mysql_fetch_assoc($comerciais)){	if ($i%2 == 0)	{		$html .= "<tr>					<td>{$x['campo']}</td>\n";	}	else	{		$html .= "<td>{$x['campo']}</td></tr>\n";	}	$i++;}

E uma dica, na query, busca apenas o campo que você quer, não precisa pesquisar a linha inteira.

Compartilhar este post


Link para o post
Compartilhar em outros sites

é só trocar o foreach por mysql_fetch_assoc:

while ($x = mysql_fetch_assoc($comerciais)){	if ($i%2 == 0)	{		$html .= "<tr>					<td>{$x['campo']}</td>\n";	}	else	{		$html .= "<td>{$x['campo']}</td></tr>\n";	}	$i++;}
E uma dica, na query, busca apenas o campo que você quer, não precisa pesquisar a linha inteira.
Valew Marcio, Obrigadão.. deu certinho... parabens

Compartilhar este post


Link para o post
Compartilhar em outros sites

é só trocar o foreach por mysql_fetch_assoc:

while ($x = mysql_fetch_assoc($comerciais)){	if ($i%2 == 0)	{		$html .= "<tr>					<td>{$x['campo']}</td>\n";	}	else	{		$html .= "<td>{$x['campo']}</td></tr>\n";	}	$i++;}
E uma dica, na query, busca apenas o campo que você quer, não precisa pesquisar a linha inteira.
Valew Marcio, Obrigadão.. deu certinho... parabens
ficou joia.. mas eu tenho um outro site e precisava de 4 colunas nele.. é facil pra mudar? ou ja teria que ser outra programação???

Compartilhar este post


Link para o post
Compartilhar em outros sites

É a mesma lógica, só tem que quebrar a cabeça um pouquinho e modificar um pouco o script.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É a mesma lógica, só tem que quebrar a cabeça um pouquinho e modificar um pouco o script.

rsrs. tá certo... se não nao aprendo neh..rsrsmas tah dificil hein.. sou novato ainda.. to só estudando por apostilas mesmo..mas vou tentando.. valew.. pelo menos uma tela já foi resolvida,acho qye esta meio complicado pra mim pois nao conhecia essa tag <thead><tfoot>.. vou dar uma estudada nelas

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza, se até a semana que vem você não conseguir resolver, posta novamente que eu te ajudo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza, se até a semana que vem você não conseguir resolver, posta novamente que eu te ajudo.

Olá Marcio, consegui em outro forum.. algo que deu o resultado que eu esperava tambem... esse tah mas facil pra mudar.. rsrs, tudo bem que nao entendi muito bem.. mas ai esta para quem precisar, na parte if(($coluna%4) você define a qtd de colunas...Valew. marcio.. se for facil pra você postar o seu.. posta ai..vai ficar mais facil pra mim tentar entender.. as diferencas...
<?phpmysql_select_db($database_conexao, $conexao);$comerciais = mysql_query("SELECT comerciais.id, empresas.nome, comerciais.detalhe, comerciais.anunciante FROM comerciais INNER JOIN empresas ON comerciais.anunciante = empresas.id ORDER BY comerciais.destaque DESC") or die(mysql_error());$num_linhas = mysql_num_rows($comerciais);?><?php$coluna=1;echo "<table border='0' cellpadding='6' cellspacing='6'>\n";echo "<tr>\n";while($resultado = mysql_fetch_assoc($comerciais)){	  echo "<td valign='top' class='pequeno'><img src=fotos/".$resultado['detalhe']."><br>".$resultado['nome']."</td>\n";	  if(($coluna%4) ==  0){		  echo "\n</tr>\n<tr>\n";	  }   $coluna ++;}echo "</tr>\n</table>";?>  <?phpmysql_close($conexao);?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você queria o resultado pronto? Bom, não acho isso legal, porque uma hora ou outra você vai se deparar com algo que ninguém vai resolver pra você. Por isso sempre procuro 'ensinar a pescar', e não entregar o peixe.

De qualquer forma, vou postar uma modificação do meu exemplo, onde você seta uma constante que contém o número de colunas que você quer. Experimente aí, mude os valores da constante N_COLUNAS.

Inclusive, você pode criar uma função ou método com estes código. Com certeza será muito útil http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

<?php$html = NULL;$i = 0;define ('N_COLUNAS', 5); // defina aqui o número de colunas que você quer$sql = Array('banana', 'maça', 'pêra', 'morango', 'abacate', 'caju', 'côco', 'melancia', 'uva', 'laranja', 'acerola');foreach ($sql AS $x){	if ($i%N_COLUNAS == 0)	{		$html .= "<tr>					<td>$x</td>\n";	}	elseif (($i+1)% N_COLUNAS== 0)	{		$html .= "<td>$x</td>\n</tr>\n";	}	else	{		$html .= "<td>$x</td>\n\n";	}	$i++;}if (sizeof($sql) % 2 > 0){	$html .= "<td> </td>\n</tr>\n";}?>
Esta parte não funcionará dependendo do número de resultados que você obter na consulta. Mas tá fácil arrumar.

if (sizeof($sql) % 2 > 0){	$html .= "<td> </td>\n</tr>\n";}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você queria o resultado pronto? Bom, não acho isso legal, porque uma hora ou outra você vai se deparar com algo que ninguém vai resolver pra você. Por isso sempre procuro 'ensinar a pescar', e não entregar o peixe.De qualquer forma, vou postar uma modificação do meu exemplo, onde você seta uma constante que contém o número de colunas que você quer. Experimente aí, mude os valores da constante N_COLUNAS.Inclusive, você pode criar uma função ou método com estes código. Com certeza será muito útil http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

<?php$html = NULL;$i = 0;define ('N_COLUNAS', 5); // defina aqui o número de colunas que você quer$sql = Array('banana', 'maça', 'pêra', 'morango', 'abacate', 'caju', 'côco', 'melancia', 'uva', 'laranja', 'acerola');foreach ($sql AS $x){	if ($i%N_COLUNAS == 0)	{		$html .= "<tr>					<td>$x</td>\n";	}	elseif (($i+1)% N_COLUNAS== 0)	{		$html .= "<td>$x</td>\n</tr>\n";	}	else	{		$html .= "<td>$x</td>\n\n";	}	$i++;}if (sizeof($sql) % 2 > 0){	$html .= "<td> </td>\n</tr>\n";}?>
Esta parte não funcionará dependendo do número de resultados que você obter na consulta. Mas tá fácil arrumar.
if (sizeof($sql) % 2 > 0){	$html .= "<td> </td>\n</tr>\n";}
Obrigado Marcio, +1x.. você está certo... sei que nao adianta ficar pedindo para os outros ficarem fazendo o codigo pra mim e dar assim de bandeja.... mas tava precisando muito disso ai... ainda não entendo desses while... foreach.. array.. mas to comecando a entender algumas coisinhas... um dia chego lah..rs Valew.. um abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa dica que você deu é muito interessante!! obrigado!!!

 

Mas tem como acontecer assim: começar em uma lista e continuar em outra?

 

tipo:

 

1 9

2 10

3 11

4 12

5 13

6

7

8

 

ou texto

 

Ana Flavia

Bruna Gorete

Carla Hilda

Daniele Joana

Elaine Karina

Fabiana

 

pois se eu coloco um order by ele começa a ordem alfabética tudo novamente na segunda coluna, e isso não é legal.

valeu!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.