Olá, pessoal, tudo certo?
A idéia é a seguinte: é comum termos formulários cadastrando seus dados no banco de dados, certo? Assim como também naturalmente se torna comum o cadastro repetido de informações, seja um cliente repetido, enfim, seja qual for a natureza do cadastro, é de extrema importância que não seja permitido o cadastrado repetido de informações.
Para a alegria de muitos, o Dreamweaver possui este recurso e podemos criar essa proteção ao seu formulário sem muito trabalho.
Vamos lá. Para poder demonstrar isso, precisarei de um formulário cadastrando no banco de dados. Logo, vamos acessar o MySQL e criar uma tabela (o banco foi criado com o nome Imasters). Veja a imagem abaixo:
IMPORTANTE: Se você não está habituado a criar tabelas no MySQL e formulários cadastrando no banco de dados, é necessário ler os artigos abaixo antes de prosseguir:
Cadastro no Banco de Dados
Agora sim a imagem da tabela a ser criada:
Ao clicar em executar teremos:
Veja a mesma preenchida:
Importante, o campo ID foi configurado como Chave Primária e Auto-increment. Veja abaixo:
Depois de configurar, clique em Salvar e veja a geração do código SQL:
Bom, nossa tabela foi criada, agora vamos para o Dreamweaver.
Dentro do Dream, a primeira coisa que preciso é criar um site para poder trabalhar com PHP e MySQL. Então, clique no Menu Site>New Site como mostra abaixo:
Ao clicar, teremos a próxima tela:
Preste bastante atenção quando estiver configurando um site no Dream, o nome do site pode até ser o de sua preferência, mas no endereço teremos o seguinte: http://localhost/nome+da+pasta+do+seu+site. No meu caso eu criei uma pasta dentro de htdocs (htdocs é a pasta raiz do Apache2triad) chamada cadastro_repetido. Sendo assim, o endereço do meu site ficará como você vê na imagem abaixo:
Em seguida, clique em Next. Teremos a tela abaixo:
Configure de acordo com a próxima imagem:
Na próxima tela precisamos configurar a pasta onde os arquivos serão salvos. Veja como ficou a minha considerando que a minha pasta se chama cadastro_repetido:
Após configurar, clique em Next. Na próxima tela, repita a configuração do site como você vê abaixo:
Em seguida avance até concluir.
Começando agora a trabalhar com nosso arquivo, crie um arquivo PHP no Dreamweaver e salve com o nome Cadastro.php.
Como vamos trabalhar com banco de dados, precisamos de uma conexão com o banco de dados criado. Na parte superior direita, localize o painel Application. Veja a imagem abaixo:
Observe que, no meu caso, a aba Databases já está selecionada, se no seu caso não estiver, basta clicar pra selecionar.
Clique no sinal de + e em seguida em MySQL Connection como você vê abaixo:
Ao clicar, teremos a seguinte tela:
Veja as explicações de cada item:
- Connection name: nome da conexão com o banco (pode ser o que você quiser)
- MySQL Server: se for local como o meu, é localhost
- User name: nome do usuário que você utiliza para acessar o banco de dados
- Password: senha do usuário utilizado
- Database: nome do banco de dados que está usando.
Veja como ficou a tela preenchida:
Depois que configurar clique em OK. Você pode expandir a conexão criada para testar se de fato você está conseguindo acessar a tabela. Veja abaixo:
Agora que já temos a conexão com o banco de dados, vamos criar o formulário que cadastre as informações no mesmo.
No painel DATA, clique na opção Record Insertion Form Wizard. Veja a imagem abaixo:
Ao clicar, teremos a próxima tela:
Veja as explicações de cada item:
- Connection: a conexão com o banco a ser utilizada, no nosso caso temos apenas uma.
- Table: a tabela do banco de dados a ser utilizada, como nosso banco tem apenas uma tabela, ao escolher a conexão já temos corretamente a tabela selecionada.
- After inserting, go to: como o próprio nome fala, aqui configuramos para qual arquivo será redirecionado após inserir os dados no banco de dados. (Tipo uma mensagem informando: dados cadastrados com sucesso)
- Label: o nome que vai aparecer como legenda antes do campo de formulário.
- Display as: o tipo de campo de formulário (text, password, select, etc)
Veja a tela configurada abaixo:
Observe que retirei o ID, como ele é auto-numeração não precisamos dele como campo de formulário para cadastrar.
Observe também que em After inserting, go to informei que ele seria redirecionado para um arquivo chamado CadastroSucesso.php, é importante lembrar que ainda não criamos este arquivo, ok?
Por último, mudei o tipo do campo senha para password, veja:
Por último clique em ok. Teremos a tela abaixo:
Pronto, temos o formulário cadastrando no banco de dados. Antes de continuarmos precisamos criar dois arquivos. Um que é o CadastroSucesso.php, então crie um arquivo novo e salve com esse nome. Nele digite a seguinte mensagem: DADOS CADASTRADOS COM SUCESSO.
Crie agora outro arquivo e salve com o nome CadastroERRO.php com a seguinte mensagem: Ops! Esse usuário já existe, por favor tente outro nome.
Com os dois arquivos de mensagens criados, volte para o arquivo Cadastro.php.
No painel DATA, clique em User Authentication e em seguida clique em Check New Username como mostra a imagem abaixo (DICA: Ao clicar no painel DATA, é o segundo botão da direita para esquerda):
Ao clicar teremos:
Aqui temos que fazer dois pequenos ajustes. O primeiro é ajustar qual campo será usado para não permitir duplicidade de informação, você configura isso em Username Field.
Logo abaixo, caso o cadastro já exista, pra que arquivo redirecionar?
Veja a tela preenchida:
No meu caso utilizei o campo Login para não permitir duplicidade, dependendo do seu sistema, fique à vontade para escolher outro campo. E caso o usuário já exista, redirecione para o arquivo CadastroERRO.php.
Clique em ok, salve o arquivo e pronto. Teste seu formulário tentando cadastrar o mesmo login e verá que não será possível.
Abraços a todos!