Ir para conteúdo

POWERED BY:

Arquivado

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

dimiguel

Descobrir atributos de campo MySQL

Recommended Posts

Preciso descobrir informações sobre colunas de um BD MySQL (se a coluna é tipo char, varchar, int, enum, etc...).

Sei que isso é possível de várias formas e uma delas seria o

DESCRIBE [nome_tabela]
, mas isso até agora só funciona no meu MySQL Front e não sei como fazer isso pelo PHP, ou seja, como obter essas informações e trabalhar com elas armazenando em variáveis, para validação de formulários, por exemplo.

Se alguém se arriscar a ajudar, ficarei muito grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

OláO comando q você está procurando é o comando mysql_field_type() ele retorna o tipo do campo.O código fonte abaixo lhe dará o funcionamento dele.<?php mysql_connect("localhost", "mysql_username", "mysql_password"); mysql_select_db("mysql"); $result = mysql_query("SELECT * FROM func"); $fields = mysql_num_fields($result); $rows = mysql_num_rows($result); $table = mysql_field_table($result, 0); echo "Your '".$table."' table has ".$fields." fields and ".$rows." record(s)\n"; echo "The table has the following fields:\n"; for ($i=0; $i < $fields; $i++) { $type = mysql_field_type($result, $i); $name = mysql_field_name($result, $i); $len = mysql_field_len($result, $i); $flags = mysql_field_flags($result, $i); echo $type." ".$name." ".$len." ".$flags."\n"; } mysql_free_result($result); mysql_close();?> O resultado seriaYour 'func' table has 4 fields and 1 record(s)The table has the following fields:string name 64 not_null primary_key binaryint ret 1 not_nullstring dl 128 not_nullstring type 9 not_null enumAbraços. :ph34r:

Compartilhar este post


Link para o post
Compartilhar em outros sites

OláO comando q você está procurando é o comando mysql_field_type() ele retorna o tipo do campo.O código fonte abaixo lhe dará o funcionamento dele.<?php mysql_connect("localhost", "mysql_username", "mysql_password"); mysql_select_db("mysql"); $result = mysql_query("SELECT * FROM func"); $fields = mysql_num_fields($result); $rows = mysql_num_rows($result); $table = mysql_field_table($result, 0); echo "Your '".$table."' table has ".$fields." fields and ".$rows." record(s)\n"; echo "The table has the following fields:\n"; for ($i=0; $i < $fields; $i++) { $type = mysql_field_type($result, $i); $name = mysql_field_name($result, $i); $len = mysql_field_len($result, $i); $flags = mysql_field_flags($result, $i); echo $type." ".$name." ".$len." ".$flags."\n"; } mysql_free_result($result); mysql_close();?> O resultado seriaYour 'func' table has 4 fields and 1 record(s)The table has the following fields:string name 64 not_null primary_key binaryint ret 1 not_nullstring dl 128 not_nullstring type 9 not_null enumAbraços. :ph34r:

Valew!!!!!

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.