mysql_num_fields e mysql_field_name no PHP

Publicado por Henrique Bueno em 30/10/2007

[ Hits: 7.044 ]

Blog: http://kibibit.com.br

 


mysql_num_fields e mysql_field_name no PHP



Esta dica demonstra a utilização das funções mysql_num_fields e mysql_field_name do PHP para a visualização de resultados de uma consulta SQL.

Utilizando essas duas funções o código fica muito mais limpo e vai dar uma trégua para sua tendinite. ;)

mysql_num_fields

Essa função retorna a quantidade de campos de uma SQL.

Exemplo:

$SQL="Select id, nome from tabela";
[email protected]_query($SQL) or die(mysql_error());
$ncampos=mysql_num_fields($resultado);

O valor de "ncampos" será 2, pois os campos listados na SQL são id e nome.

Então, poderíamos fazer:

$ncampos=mysql_num_fields($resultado);
echo "<tr>";
for( $y=0; $y<$ncampos; $y++){
   $campo=mysql_field_name($result,$y);
   echo "<td>$campo</td>";
}
echo "</tr>";

Com esse código nós criamos o cabeçalho da tabela de resultados sem ao menos saber os nomes dos campos que serão apresentados.

mysql_field_name

Essa função retorna o nome do campo na ordem que foi inserida na SQL.

Exemplo:

$SQL="Select id, nome,email from tabela";
[email protected]_query($SQL) or die(mysql_error());
$campo=mysql_field_name($resultado,2);

O valor de campo será nome, pois é o segundo campo listado na SQL.

Agora, para listarmos todo o resultado de uma consulta SQL, podemos fazer assim:

while ($array_result = mysql_fetch_array($resultado)) {
   echo "<tr>";
   for( $y=0; $y<$ncampos; $y++){
      $valor=mysql_field_name($resultado,$y);
      echo "<td> $array_result[$valor] </td>";
   }
   echo "</tr>;
}

Então é isso, por enquanto é só! Fica para uma próxima dica como paginar os resultados.

Henrique Bueno
http://www.kibibit.com.br

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Otimizando conexões entre PHP e MySQL

Descobrir a senha do PHPMyAdmin

Ubuntu + Apache2 + MySQL + PHP5

Paginação com ADODB

Mensagem de erro: "PHP Fatal error: Call to undefined function pg_connect()" [Resolvido]

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário