Desenvolvimento - PHP

Criando uma pagina de busca por registros em um banco de dados com PHP/MySQL usando Dreamweaver - Parte 1

Neste artigo o autor mostra como criar um sistema de busca em um banco de Dados MySQL utilizando PHP no ambiente Dreamweaver.

por Marcus Varanis



Introdução

Neste artigo mostrarei como criar um sistema de busca em um banco de Dados MySQL utilizando PHP no ambiente Dreamweaver.

Objetivo

Como já citamos a idéia do artigo é criar um sistema de busca, então vamos planejar as etapas e os requisitos necessários para criação deste projeto:

1 – Temos que ter um banco de dados onde faremos a busca pelos registros e criaremos a conexão no Dreamweaver. (estarei usando o mesmo banco de dados do artigo “Criando uma pagina PHP para inserir registros em um banco de dados MySQL com o Dreamweaver”, e nele você pode encontrar instrução SQL e como fazer a conexão do banco de dados no Dreamweaver).
2 – Teremos que criar dois documentos no Dreamweaver o primeiro um documento html, que será a pagina responsável pela busca, e o segundo um documento php que será a página que exibirá os resultados.

Daí em diante e começar o trabalho.

Mãos a obra

Vamos começar criando um o documento php e salve como master.php.
Como já existe a conexão com o banco de dados vamos criar um Recorset, que será usando para exibir as informações e os parâmetros de busca (instruções SQL). Para tanto você deve ir ao painel application/bindings, clicar sobre o botão com o simbolo + e escolher a opção recordset, como mostrado na figura 1.



figura1 - Criando um Recordset

Feito isto será aberto a caixa de opções do seu Recordset, como mostrado na figura 2.


Figura 2 – Propiedades do recordset.

Segue abaixo a função de cada um dos itens que faremos a configuração.

Name: Nome dado ao Recordset, podemos manter o que vem por padrão.
Connection: Aqui devemos indicar a conexão com o banco de dados.
SQL: Aqui colocaremos as instruções SQL que farão a busca.
Variables: Aqui colocaremos as variáveis quando necessárias.
Database items: aqui serão mostrados as tabelas do banco de dados que foi configurado na conexão.

Então faremos as seguintes configurações:

Name:

Recordset1

Connection:

artigo01

SQL:

Nesta opção deveremos colocar a instrução SQL, porém, como a busca será feita através de um formulário, e a pesquisa será feita com base no texto que será inserido em um text field , então teremos que criar uma variável. Outro detalhe a que vai buscar será feita com base no campo nome da tabela dados. Portanto a instrução SQL ficará da seguinte forma:

SELECT * FROM dados

WHERE dados.nome LIKE "%search%"

Explicando:

SELECT * FROM dados : aqui estamos selecionado todos os registros da tabela dados.

WHERE dados.nome: aqui estamos utilizando a clausula WHERE como filtro, nesse caso estamos condicionando que serão buscados apenas o campo nome da tabela dados.

LIKE "%search%" : aqui utilizamos a claúsula LIKE para que a variável que iremos criar seja utilizada, onde, search é o nome da variável que será criada.

Devemos criar a variável que foi usada na instrução SQL, na caixa de opções do recordset, na opção variable clique no botão com o símbolo de +, será aberta a caixa de opção add parameter, mostrada na figura 3.


Figura 3 – add parameter(propiedades da variável)

Onde:

Name: é o nome da variável, atribuimos a ela o nome de search.
Default value: Essa opção é usada para definir os registros mostrados quando fazemos uma consulta com o text field vazio, nesse exemplo utilize *.*, mas em muitos exemplos utiliza-se o valor -1.
Runtime Value: aqui cria-se a variável para o php. Utilizaremos $_GET[‘search’].

Feito isso clique no botão test , se não aparecer nenhuma mensagem de erro, será aberta uma nova janela chamada TEST SQL Statement e sua instrução SQL esta ok.

Agora temos que preparar a página que irá exibir os resultados, para tanto utilizaremos o recurso dynamic table, que será encontrado no menu insert/application objects/dynamic data/ dynamic table.

E será aberto a janela, onde devemos configurar as seguintes opções.

Recordset: Aqui deve estar o recordset criado anteriormente.
Show: aqui indicamos a quantidade de registros que serão exibidos, marque all para visualizarmos todos que forem encontrados.
Border: tamanho da borda da tabela.


figura 4 - Configuração da tabela dinâmica.

Abaixo temos resultado.


figura 5 - tabela dinâmica gerada

Nossa página de resultados já esta pronta e termina aqui agora teremos que preparar a pagina de busca, e como citamos será um documento html.
Insira formulario na sua pagina. Você pode fazer isto através da guia forms, sendo que o formulário e o primeiro item da guia.


Figura 6 - criação do formulário

Depois adicione um text field que é o segundo item da guia forms, em seguida adicione um button que antepenúltimo item da guia forms, é extremamente importante que o text field tenha o mesmo nome da variável que foi criada na instrução SQL (search), caso contrário sua busca não irá funcionar. Então você deve então renomea-lo e deverá ficar como mostrado na figura 7.


Figura 7- Propiedades do Text field.



Figura 8 - Campo de busca criado

Agora só falta indicarmos quando o formulário for enviado ele deve ser setado para a pagina master.php, faremos isso através das propriedades do formulário selecione a tag form e faça as seguintes alterações:

Action: master.php
Method: GET


figura 9- Propiedades do formulário

Feito isso esta pronta nossa sistema de busca, agora é só testar.

Lembre-se de inserir registros no banco de dados e que a busca é feita pelo nome.


figura 10 - pagina de busca



figura 11 - Página de resultado

Esta foi a primeira parte deste artigo, no próximo tentarei mostra como fazer a paginação dos resultados e como mostrar o total de registros encontrados e outras funções que vão tornar muito mais eficaz a navegabilidade e visualização dos resultados.

Vale lembrar que em momento nenhum tratamos da questão do design das paginas, porém você pode tornar esse projeto muito mais agradável visualmente, uma vez que o php nada tem a ver com o design dessas páginas, tente modificar, melhorar e adicionar mais elementos, afinal no Dreamweaver temos inúmeros recursos que podem ajudar bastante nessa tarefa.

Qualquer dúvida entre em contato.

marcus.varanis

Marcus Varanis

Marcus Varanis - Programador da TDSW Software e Telecomunicações em Rio Claro - SP, desenvolve em PHP/MySQL e também Delphi, trabalha com ASP.NET e estuda MONO, é instrutor de informática da Nexus Treinamentos também em Rio Claro. Formado em Física e aluno do programa de pós-graduação em Física Aplicada da Unesp, onde trabalha com sistemas complexos e simulação computacional.