Ir para conteúdo
Faça parte da equipe! (2024) ×

[Tutorial] - Sistema de Login com MYSQL - Delphi


LeoM.
 Compartilhar

Posts Recomendados

Link do Post Completo: Sistema de Login - Delphi e Banco de Dados - Linguagem da Web: Sistema de Login - Delphi e Banco de Dados

 

Olá Pessoal, meu nome é Leonardo Marques e estou escrevendo este artigo para aqueles que se interessam por programação e querem aprender sobre esse mundo.

 

 

Necessário:

 

 

•Conhecimento Básico Delphi

•Conhecimento Básico Mysql (Banco de Dados)

•Delphi (Qualquer Versão)

•Zeus (Componente Delphi)

•Servidor Local (EasyPhp)

 

 

Hoje vou apresentar um sistema bem maneiro de como você pode integrar seu delphi com um Banco de Dados, seja ele Mysql, Oracle, SQL entre outros. Mas nesse Artigo irei utilizar o MYSQL.

 

 

OBS: Para aqueles que só copiam os códigos , melhor você sair pois estou escrevendo para pessoas interessadas em aprender.

 

Delphi7_286x357.jpg

 

Bom vamos Começar.

 

 

1 - Crie um novo Aplicativo no Delphi.

 

 

File >> New >> Aplication

 

 

2 - O " Form1 " criado automaticamente pelo delphi será nosso form de autenticação . Adicione os seguintes Componentes do Delphi:

 

•2 Edits

•2 Labels

•1 Button

E organize como na imagem abaixo ou como você achar melhor.

 

sistemaloginmysql.JPG

 

3 - Usarei o Componente "Zeus", para quem nunca usou essa ferramenta , estarei disponibilizando um artigo ensinando a instalar no seu Delphi. Adicione os Seguintes componentes do Zeus como mostra a foto abaixo:

 

sistemaloginmysql2.JPG

 

•ZConnection

•ZQuery

4 - Estou Utilizando um Servidor Local (EasyPhp), o caminho do phpmyadmin (http://localhost/home/mysql) onde criarei um Banco de Dados chamado: "web", uma tabela chamada "users" com 2 Arquivos. Os Dois Arquivos preencham como na Foto.

 

sistemaloginmysql3.JPG

 

Se você não conseguiu, clique em SQL e adicione o Codigo Abaixo:

 

 

É necessário se cadastrar para acessar o conteúdo.

sistemaloginmysql4.JPG

 

 

5 - Voltando ao Delphi, vamos configurar o componente ZConnection para que ele se conecte com nosso Banco de Dados. Clique no Componente 1 vez e mude somente essas propiedades:

 

•Database : web

•Hostname : localhost

•Password : (no meu caso, nao tenho senha)

•Port : 3306

•Protocol : mysql-5 (Versão do Mysql que estou usando)

•User : root (Usuario do meu LocalHost)

Para testar se deu certo sua conexão . Vá na Propiedade " Connected " e mude para " True ", se ficar True, quer dizer que sua Conexão foi bem sucedida.

 

6 - No Componente ZQuery mude apenas uma Propiedade nele:

 

•Connection : ZConnection1

 

"ZConnection1" é o nome que dei para o componente do passo anterior . Apenas disse para o Componente que executa os comandos SQL , que as configurações de conexão do banco de dados está no Componente "ZConnection1".

 

7 - Agora Vamos para que realmente interessa, Vamos Adicionar este Codigo no Botão.(Dois Cliques no Botao para Adicionar o Código).

 

sistemaloginmysqlsource.JPG

 

Compile o Programa para ver se não tem Erro(Para Testar: F9 | Para Compilar: CTRL+F9), Se estiver tudo Ok , você deve estar se perguntando. Como inserir um usuario e senha no BD para testar meu programa. Simples, é o que veremos no Proximo passo.

 

8 - Vá no Seu Painel Mysql e Abra a Tabela Users e Adicione os Dados como na Figura Abaixo:

 

sistemaloginmysql6.JPG

 

 

9 - Finalizando a Prova de funcionamento do Programa :

 

Quando os Dados não estão cadastrados no BD:

 

sistemaloginmysql7.JPG

 

Quando estão Cadastrados:

 

sistemaloginmysql8.JPG

 

 

Conclusão

 

Esse Sistema é bem simples e você pode usá-lo para estudo e aprofundar-se melhor . Usando ele você pode desenvolver aplicações que utilizem BD e podendo assim , limitar só algumas para usar seu programa. Mas CUIDADO !!!, o sistema até então ensinado, está Básico, pois um bom cracker pode descompilar seu programa e descobrir as informações do seu Banco de Dados, assim podendo fazer o que bem entender (ainda não aparecerão casos). Espero que tenham gostado, se tiver alguma dúvida postem comentários , que quando puder estarei respondendo.

 

 

Até a Proxima

Leonardo Marques

Link para o comentário
Compartilhar em outros sites

Realmente bem útil, eu não sabia disso.

Concerteza vai ajudar muitos membros.

@Tópic.

Tópico bem organizado com imagens ilustrativas.

E boas explicações, bem útil mesmo, parabéns.

Obrigado por compartilhar.

abraços

" Odiar "Adeus" sobre todas as coisas. "

Link para o comentário
Compartilhar em outros sites

Parabéns pelo tópico, está realmente ótimo, MYSQL além de ser de facil manuseio, tem uma boa segurança.. ao contrario do banco de dados access (que muita gente ainda insiste em usar ).

 

Só para ser chato um pouco:

 

Só faltou um pequeno tratamento de String pra prevenir contra Sql Injection ( porém, é claro, falar desse tema estenderia demais o tópico.. xD )

 

Flw, abraços

Link para o comentário
Compartilhar em outros sites

Obrigado Galera.... Fiz esse Post no meu Blog e Resolvi postar Aqui tambem na WC, So não imaginava que umas das pessoas que mais me ajudou quando tive Duvidas , fosse me agradecer " DragonBoss " , Tô de queixo caido até agora ~^. Vou Me Esforçar e Criar Mais Programas Legais. Vlw Galera......

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois...

Muito bom mesmo!, mas como ficaria na seguinte situação:

 

este mesmo programa só que usando ele remotamente!, de vez ser Local ser um HOST, um ip de uma maquina que contenha um mysql ou até mesmo um DNS como no-ip com conexão com o banco ??????????????????

 

tenho essa duvida desde a semana passa.

postpunido.png

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.