Criar Web, manuais e recursos para desenvolvimento web
Manuais
Programas
FAQS
Diretório
Comunidade
  Inicio > Manuais > Workshop de PHP
SEÇÕES
Manuais relacionados
+Workshop de PHP
Categorias
+PHP
+Scripts em PHP
+Bases de dados com PHP

Índice do Manual Workshop de PHP
+ Gestão de ficheiros através de PHP
+ Upload de ficheiros com PHP
+ Verificar a existência de uma URL
+ Leitura sequencial de ficheiros com PHP
+ Escritura em ficheiros com PHP
+ Gestão de directórios com PHP
+ Função que escreve um campo select com valores de uma base de dados
+ Receber o último ID de uma inserção com PHP e MySQL
+ Recolher dados de um Select Multiple com PHP
+ Enviar e-mails pelo PHP
+ Validar um endereço email em PHP
+ Loop para receber todas as variáveis por POST em PHP
+ Enviar um formulário por mail com PHP
+ Paginação de resultados com PHP e MySQL
+ Usuários ativos com PHP
+ Listas de elementos com cores alternas em PHP
+ Programas de livre distribuição em PHP
+ phpMyAdmin
+ Formatação de uma cadeia
+ Cálculo dos dias de um mês em PHP
+ Contador simples para páginas PHP
+ Avaliações dos usuários em PHP
+ Rastrear os robôs de buscadores
+ Recomendar um site usando PHP
+ Criação de um log de erros
+ Comprimir página PHP
+ Contador PHP com imagens
+ Editor PHP Maguma Studio
+ SiteMaps de Google em PHP
+ Teste de velocidade de conexão à Internet
+ Mostrar Conteúdo de acordo com o país em PHP
+ Conteúdos em banco de dados com PHP
+ Problemas com as datas em timestamp Unix de PHP
+ Contar o número de linhas e caracteres em arquivo PHP
+ Transformação Doc, Odt ou Rtf para PDF
+ Preencher um arquivo RTF e gerar o PDF
+ Converter arquivos ods ou xls para pdf
+ PHP isam, ferramenta Web para Arquivos Planos
+ Undefined variable ou Undefined index
+ Agregar carinhas ao sistema
+ Paginator, script para paginação com PHP e MySQL
+ Executar scripts PHP automaticamente através do cron com CURL
+ Uso do FTP com PHP
+ Instalação de One or Zero PHP Helpdesk
+ Portal PHP Nuke
+ Gerando feed RSS de notícias em PHP
+ Blasten blt-SEARCH 1.0.5
+ Classes e Objetos em PHP
+ Recuperando a qualidade de uma imagem JPEG
+ Comprovar se existe o domínio do correio
+ Tutorial de BBCode
+ Função em PHP para o cálculo de minutos transcorridos em duas horas dadas
+ Criação de gráficos em PHP com JpGraph
+ Gerar documentos de Word RTF com PHP
+ Introdução ao Symfony
+ Arredondar decimais em PHP
+ Envio de boletins a e-mails de um banco de dados MySQL
+ Htaccess e páginas dinâmicas
+ Criando imagens com PHP
+ Programar um buscador com PHP e MySQL
+ Loop para receber todos os dados de uma fila de um recordset com PHP

Descrição dos capítulos

Parceiros
- CSS para Web Design
- S.O.S Designers
- Slackware-Brasil
- Crie seu Web site
- Oficina da Net


Função que escreve um campo select com valores de uma base de dados

Uma dica para escrever dados de uma BD num formulário.


Durante o trabalho com formulários em PHP, as vezes temos um campo select cujos valores possíveis obtêm-se de uma base de dados, por exemplo, os paises. Neste capitulo vamos mostrar uma função que é capaz de escrever num formulário um campo select, obtendo os valores de uma tabela da base de dados. Com esta função podemos esquecer-nos da dificuldade de mostrar um campo select. Simplesmente chamamos à função, enviando os parâmetros, e encarrega-se de mostrar o campo.

No caso dos paises, pode ser uma boa ideia ter uma tabela com a lista de paises do mundo. No formulário o habitual é permitir escolher um pais da lista e enviar o código do pais. Deste modo, podemos ter a certeza que todos os usuários escolheram um pais da lista, entre todos os possíveis.

A tabela de paises poderia conter algo parecido a isto:

id_paisnome_pais
1Portugal
2Brasil
3Angola
4Moçambique
5Cabo Verde
......

Este é o código HTML de um possível formulário cujo campo paises foi extraído da anterior tabela:

<form>
Nombre: <input type=text name="nome">
<br>
País:
<select name=id_pais>
   <option value=1>Portugal
   <option value=2>Brasil
   <option value=3>Angola
   <option value=4>Moçanbique
   <option value=5>Cabo Verde
</select>


Função saca_menu_dinamico()

Agora vamos ver como se faria uma função que recorre a tabela da base de dados para mostrar o select do pais. Para começar vamos ver uma lista dos parâmetros que aceita.

  • ssql: sentença SQL que permita extrair os dados das possiveis opções do select. A sentença SQL teria uma forma como esta "select id_pais, nome_pais from pais". Na primeira coluna dos registos seleccionados com esta sentença, espera-se o value dos option (neste caso id_pais). Na segunda coluna espera-se o texto das option.
  • valor: Neste parámetro recebe-se o valor pré-definido que deve aparecer no select. Este valor compara-se com o primeiro campo da sentença SQL. (Se desejamos que o valor pré-definido seja Portugal, devíamos por um 1 como valor)
  • nome: É o nome que se da ao campo select do formulário
O código da função é o seguinte:

function saca_menu_dinamico($ssql,$valor,$nome){
   echo "<select name='$nome'>";
   $resultado=mysql_query($ssql);
   while ($fila=mysql_fetch_row($resultado))
   {
     if ($fila[0]==$valor){
       echo "<option selected value='$fila[0]'>$fila[1]";
     }
     else{
       echo "<option value='$fila[0]'>$fila[1]";
     }
   }
   echo "</select>";
}


Escreve-se o campo do formulário select, indicando o nome do campo que se recebeu por parâmetro. A seguir, realiza-se uma procura na base de dados, executando a sentença SQL recebida por parâmetro.

Mais tarde faz-se um recorrido do conjunto de registos que se encontraram na base de dados e escrevem-se em cada um deles. Para cada um dos registros comprova-se que o seu identificador é igual ao que se deseja marcar como valor pré-definido. No caso de o ser, escreve-se o option com o atributo selected.

Um detalhe importante é que a função necessita ter uma conexão aberta com a base de dados, pois em caso contrario não se poderia executar a sentença SQL.

Autoria e outras referências sobre este artigo

Manuais relacionados com este artigo
Dentro de Workshop de PHP

Categorias relacionadas
Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo:
+ Entrar em PHP
+ Entrar em Scripts em PHP
+ Entrar em Bases de dados com PHP


Comentário sem rever
Entre os comentários não revistos podem ter alguns interessantes que tenham sido enviado recentemente.
 Foi encontrado um comentário sem rever

VerVer os comentários não revistos



Sobre nós | Copyright | Anuncie | Entrar em contato <criarweb>

Hospedado por Hostnet Hospedagem de Sites