PHP e MySQL - Listando Tabelas / Estruturas Parte 2

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (1)  (2)

Continuando a série de artigos sobre PHP e MySQL, Adriano Santos mostra como listar os campos da tabela selecionada em uma lista.

PHP e MySQL

Listando Tabelas / Estruturas Parte 2

por Adriano Santos

Salve amigos, no último artigo referente a “Listando Tabelas / Estruturas Parte I” mostrei como utilizar a função mysql_list_tables() para montar uma lista com todas as tabelas de um banco de dados MySQL on-line. Como base no exemplo anterior vamos criar um novo arquivo chamado lista_campos.php vou demonstrar como listar os campos da tabela selecionada na lista. Para isso, volte no exemplo anterior e altere os script na linha que faz a criação do FORM, conforme a Listagem 1.

 

print "

";

Listagem 1. Descrição da listagem

Isso fará com que, ao clicar no botão Mostrar nosso script envie para o arquivo lista_campos.php o nome da tabela selecionada e efetue a listagem dos campos.

O código fonte

O código fonte para fazer a listagem dos campos da tabela não chega a ser complexo, mas exige uma maior atenção, pois usaremos mais de uma função nativa do PHP. Nós iremos usar as seguintes funções:

mysql_field_name = Usada para criar um array com todos os campos da tabela selecionada.

mysql_num_fields = Retorna o número de campos existente na tabela. Isso será usado para retornar informações de cada campo.

mysql_field_len = Retorna o tamanho do campo passado no parâmetro.

mysql_field_type = Retorna o tipo do campo passado no parâmetro.

mysql_field_flags = Retornas informações detalhadas do campo, tais como: se é primary key, auto numério e etc.

Veja o fonte completo na Listagem 2.

Listando Tabelas/Estruturas Parte 2

//Conecta-se ao banco de dados

$link = mysql_connect("localhost","lw094h01_mestre", "xk21367");

//Seleciona o Banco de Dados

mysql_select_db("lw094h01_doiscliques");

//Cria um array ($fields com todos os campos presentes na tabela

$fields = mysql_list_fields("lw094h01_doiscliques",$table,$link);

//Conta o número de colunas retornadas.

$columns = mysql_num_fields($fields);

 

print "

 

";

print "

 

";

print "Número de campos: " . $columns . "
";

print "

";

print "

";

print "

";

print "

";

print "

";

print "

";

print "

";

print "

";

 

for ($i = 0; $i < $columns; $i++) {

print "

";

print "

";

print "

";

print "

";

}

print "

";

print "

";

print "

";

print "

Estrutura da tabela $table
Campo Tam. Tipo Detalhes
";

//imprime o nome do campo

print mysql_field_name($fields, $i);

print "

";

//imprime o tamanho do campo

print mysql_field_len($fields, $i);

print "

";

//imprime o tipo do campo

print mysql_field_type($fields, $i);

print "

";

//imprime outras informações do campo, tais como: se for um auto_increment

if (mysql_field_flags($fields, $i) == ""){

print "não espcificado";

}else{

print mysql_field_flags($fields, $i);

}

print "

";

print "[** Voltar **] ";

print "

";

 

?>

Listagem 2. Descrição da listagem

Só para entendermos melhor, o algoritimo acima armazena em um array ($fields) todos os campos da tabela. Logo em seguida atribui a variável $columns o número de campos existentes na tabela. Desta forma, fizemos um laço FOR em todos os campos para pegar e imprimir as informações de cada um na tela.

 

Como mencionado no artigo anterior esta técnica pode ser empregada quando precisamos criar um sistema de atualização da base de dados on-line. Desta forma podemos criar mecanismos para que nosso suporte técnico, ou mesmo nosso cliente, possa treinar funcionários capazes de atualizar o website de forma automática e segura.

 

No próximo artigo veremos como criar uma rotina para Dropar e Incluir um determinado campo na tabela.

 

Um grande abraço a todos.

 

Conclusões

Neste artigo vimos como listar todos os campos de uma tabela MySQL on-line através da função mysql_list_fields(); e suas variantes. O PHP possui uma série de funções para se trabalhar com estrutura de dados. O próprio aplicativo PHPMyAdmin, bastante conhecido pela comunidade, utiliza-se destas funções.

 

 Noticia_AdrianoSantos.gif

Adriano Santos (artes@doiscliques.com)é Professor de Informática em São Paulo, Sócio Proprietário e Diretor de Arte da agência DoisCliques (www.doiscliques.com), especialista em Delphi, programador PHP, designer, webdesigner e viciado em Dreamweaver, Fireworks e Flash. Autor dos artigos: “Diretivas de Compilação” e “Api no Windows”

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?