Escolar Documentos
Profissional Documentos
Cultura Documentos
Para que se consiga entender melhor as potencialidades do PHP relativamente à interacção com bases de dados,
iremos desenvolver, uma aplicação simples que poderá servir, futuramente, para tomar como ponto de partida
para o desenvolvimento de uma aplicação completa de gestão de contactos, implementada com as
funcionalidades adequadas ao seu caso.
Sendo o objectivo deste exemplo meramente pedagógico, esta aplicação será extremamente simples e permitirá
efectuar as operações mais elementares (editar/alterar, adicionar, eliminar) que uma aplicação deste tipo requer.
Considere uma base de dados chamada testeDB com apenas uma tabela chamada teste com a seguinte estrutura:
Se reparar atentamente no final do script, aparece a instrução include (“menu.inc”). Esta instrução permite
incluir dentro do código PHP ficheiros de texto capazes de serem interpretados pelo servidor.
De facto, a utilização desta técnica permite executar um conjunto de instruções que, por serem repetitivas,
simplificam a gestão da aplicação para o programador.
Deste modo, conseguimos com a chamada do ficheiro “menu.inc” incluir código que aparece constantemente
ao longo da elaboração desta aplicação fazendo referência a este ficheiro e assim evita-se incluir linha a linha o
conteúdo deste ficheiro em cada um dos scripts em que a sua intervenção seja necessária.
O script “menu.inc” possui as seguintes instruções:
Repare-se que no “menu.inc” se faz referência a scripts que ainda não foram criados. Em conjunto com o script
anterior, o resultado final obtido é o da seguinte figura:
Para a aplicação ficar completa, ainda nos falta criar scripts que permitam adicionar, alterar e eliminar registos.
Obviamente que, para que tal seja possível, irá fazer-se recurso intensivo à utilização de formulários, que
permitirão uma maior interactividade com o utilizador.
Adição de registos
Para adicionar registos, iremos utilizar dois scripts: o “adic.php” que permite ao utilizador lançar os dados
através de um formulário que, por sua vez, irá executar o segundo script “adic1.php” capaz de efectuar a adição
desses registos à base de dados:
O resultado final obtido consiste num formulário que irá permitir ao utilizador lançar os dados em campos
específicos. Esse formulário tem o aspecto da seguinte figura:
Depois de o utilizador lançar os valores que pretende adicionar, o script “adic1.php” irá ser chamado e irá
estabelecer a ligação ao MySQL, seleccionar a base de dados e adicionar o novo registo caso o campo nome do
formulário não esteja em branco. De facto, a tarefa mais trabalhosa será realizada por este último script que será
o responsável pela interacção com a base de dados:
Resultado da inserção de novos registos
Um dos problemas que este script tem é o de, por engano, se poder repetir o lançamento do mesmo registo,
podendo no final haver mais de um registo para o mesmo indivíduo. Obviamente, é conveniente evitar este
contratempo, introduzindo algumas linhas de código que permitam verificar se um dado indivíduo já existe.
Deixa-se a alteração do script anterior ao teu cuidado de forma a puderes exercitares-te um pouco com o PHP.
Edição/alteração de um registo
Para editar e alterar um registo, a tarefa não é tão simples quanto a de uma adição. Existindo outros processos
mais expeditos do que o que vamos mencionar, acabam por ser mais confusos para quem se inicia nesta
linguagem.
O método que iremos utilizar faz recurso a três scripts: o script “alter.php” que permite listar os registos da base
de dados; mediante a selecção de um deles, o script “alter1.php” irá ser executado, colocando os valores
correspondentes ao registo seleccionado nos campos de um formulário; de seguida, esses campos, depois de
alterados, irão ser inseridos na base de dados mediante a execução do script “alter2.php”:
A grande diferença relativamente ao script “main.php” reside na introdução da seguinte linha de código:
<a href=\"alter1.php?identif=$id&telefon=$telf&nome=$nome\">$nome</a>
Esta linha cria uma ligação ao script “alter1.php” que permite, ao dar um dique sobre o campo nome do registo,
transferir algumas das suas variáveis para o script, que não é nada menos nada mais do que um formulário que
permite editar o conteúdo dos campos.
Repare-se que as variáveis transmitidas dão pelo nome de identif, telefon e nome, devendo ser chamadas por
esta designação para serem editadas no formulário criado pelo script “alter1.php”:
De referir que, em situações onde sejam seleccionados mais de um registo (não neste caso, por razões óbvias),
será de tomar cuidado com a utilização do comando mysql_result($resultado,0, “$field”). Como o campo id é
único, visto ser um campo-chave, não há necessidade de ser mais específico relativamente à cláusula where da
instrução SQL.
Eliminação de registos
Para eliminar um registo da base de dados, iremos proceder de um modo semelhante ao anterior, recorrendo a
dois scripts: um (“elim.php”) irá listar os registos e o outro (“eliminl.php”) permitirá a eliminação do registo
seleccionado:
Scrip elim.php
A condição if ($Submit) é aqui de primordial importância pois, no caso de esta variável possuir um
determinado valor (esta variável passa a possuir um valor sempre que se carrega sobre o botão 0K), irá
processar o comando SQL sobre a base de dados de modo a eliminar o registo seleccionado.