Crie seu banco de dados que chamaremos de 'banco', depois utilizando o phpMyAdmin crie uma tabela chama de 'usuarios', dentro da tabela usuarios crie os campos referente aos dados do cadastro do usuario que você irá manter, em nosso exemplo vamos criar 4 campos: ( id com auto increment e chave primaria), nome, e-mail e senha. O login será efetuado com o e-mail do usuário, assim não precisa ter mais um campo denominado login.
Criaremos então o arquivo de conexão com o banco de dados:
<?php
// Conexão com banco de Dados
$server = "localhost" ; //endereço do servidor, geralmente aplica-se o localhost
$db = "" ; // nome do banco de dados
$user = "" ; //usuario do banco de dados
$pass = "" ; //senha do usuario do banco de dados
$conexao = mysql_connect($server, $user, $pass);
if ($conexao) {
// echo "Conectado com sucesso";
}
$selectdb = mysql_select_db($db);
if ($selectdb) {
// echo "DB selecionado com sucesso";
}
?>
*OBS para verificar o funcionamento tire as // na frente dos eixo que deixa essas linha como comentário e após verificado o funcionamento coloque novamente para não aparecer as mensagens em seu sistema
Feito isso crie seus formularios, um de cadastro de usuario e o outro de login. Os campos no formulario de cadastro são:
-
Nome (textfield name="nome")
-
e-mail (textfield name="email")
-
Senha (password name-"senha")
Faça um action deste formulario para 'cadastrousuario.php'
E no formulario de login são:
-
e-mail (textfield name="email")
-
Senha (password name-"senha")
Faça um action deste formulario para 'login.php'
Agora vamos criar o arquivo cadastrousuario.php que irá gravar os dados do usuário no banco de dados.
<?php
require ('conexao.php');
$sql = "INSERT INTO usuarios (`Nome`, `Email`, `Senha`) VALUES ('$nome', '$email', '$senha')";
$resultado = mysql_query($sql);
if ($resultado) {
echo "usuario cadastrado com sucesso";
}
?>
e também o arquivo que verifica o login login.php.
<?php
include ("conexao.php");
$confirmacao = mysql_query("SELECT * FROM `usuarios` WHERE Email = '$email' AND Senha = '$senha'", $conexao); //verifica se o login e a senha conferem
$contagem = mysql_num_rows($confirmacao); //traz o resultado da pesquisa acima
if ($contagem == 1) {
include ("painel/logado.php"); //o arquivo logado.php é que autentica o login
require ("painel/index.php"); //pagina inicial do sistema após login
}
else {
echo "Erro de Login, por favor tente novamente";
require ("index.php"); //se login estiver errado volta para pagina inicial para digitar novamente
}
?>
Veja que todos os arquivos que serão acessados após login estamos jogando em uma página com nome de 'painel', por questão de organização.
Agora vamos criar o arquivo logado.php que vai segurar a variavel que vai informar ao sistema que o usuario possui login valido:
<?php
// se login efetivado carrega essa pagina com esta variavel
if ($contagem == 1) {
$acesso = 'ok';
}
else {
echo "Você não esta logado!";
}
?>
Agora para trancar as paginas sempre crie dois arquivos, um será o que será chamado pela url e outro o conteudo propriamente dito, como exemplo a primeira pagina de nosso sistema que é painel/index.php.
Primeiro o arquivo index.php:
<?php
include ('logado.php');
if ($acesso == 'ok') {
require ("conteudoindex.php"); //se logado vai carregar o arquivo de conteudo
}
else {
echo "Não Logado!";
}
?>
E o arquivo que terá o conteudo propriamente dito: conteudoindex.php
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Titulo</title>
</head>
<body>
<!-- Uma pagina html normal ou com qualquer conteudo que deseje -->
</body>
</html>
Você pode escrever tudo em apenas um arquivo, mas assim torna-se mais organizado.
Para deixar seus sistema mais seguro ao invés de utilizar 'ok' como verificação de acesso, crie alguma expressão dificil e longa como: 'afsd8fas5f4s4fas4f5a4fe5w4fa56w4fe5wefwa'.