Fazendo sistema de cadastro e login 14.10.14 13:21
Olá pessoal, hoje venho trazer pra vocês um tutorial, como fazer um sistema de cadastro e login com PHP/MYSQL.
Bom vamos lá.
Pra fazer esse sistema oque você precisa:
1. Plataforma como IIS, AppleWS, Xampp, etc.
2. Um editor de texto, sendo ele o Bloco de Notas ou o Dreamweaver (não sei como escreve hue), ou o notepad++.
3. Prestar bem atenção no tutorial. :P
Para começar você vai criar 4 arquivos:
index.php (Onde você vai logar).
cadastro.php (Onde você vai cadastrar-se).
dados.php (Onde será averiguado os dados da index e do cadastro).
conexao.php (Onde será efetuado a conexão com o MySQL).
Antes de começarmos com o PHP vamos começar com o SQL.
Vá em seu PhpMyAdmin e crie uma DB, nesse caso vai se chamar <b>tutorial</b>.
Depois vamos criar a tabela <b>usuarios</b>.
Agora vamos criar o conxao.php
Depois criaremos o arquivo index.php.
Agora criaremos o arquivo cadastro.php
Agora criaremos o arquivo dados.php
Para verificar se um usuário está logado ou não , basta inserir o <b>dados.php</b> em p.ex me.php com o seguinte código:
Nesse caso ele redirecionaria o usuário para a index.php se não estivesse logado.
Créditos: WictorP
Bom vamos lá.
Pra fazer esse sistema oque você precisa:
1. Plataforma como IIS, AppleWS, Xampp, etc.
2. Um editor de texto, sendo ele o Bloco de Notas ou o Dreamweaver (não sei como escreve hue), ou o notepad++.
3. Prestar bem atenção no tutorial. :P
Para começar você vai criar 4 arquivos:
index.php (Onde você vai logar).
cadastro.php (Onde você vai cadastrar-se).
dados.php (Onde será averiguado os dados da index e do cadastro).
conexao.php (Onde será efetuado a conexão com o MySQL).
Antes de começarmos com o PHP vamos começar com o SQL.
Vá em seu PhpMyAdmin e crie uma DB, nesse caso vai se chamar <b>tutorial</b>.
Depois vamos criar a tabela <b>usuarios</b>.
- Código:
CREATE tab[b][/b]le `tutorial`.`usuarios` (
`id` INT NOT NULL AUTO_INCREMENT ,
`nome` TEXT NOT NULL ,
`senha` TEXT NOT NULL ,
`email` INT NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = INNODB;
Agora vamos criar o conxao.php
- Código:
$host = "localhost" // IP do host //
$login = "root" // Usuário do login no PhpMyAdmin //
$senha = "pass" // Senha do PhpMyAdmin //
$db = "tutorial" // Nome da DB criada anteriormente //
/* fazendo conexão */
$conexao = mysql_connect($host, $login, $senha);
/* selecionando a DB no MySQL */
mysql_select_db($db, $conexao);
Depois criaremos o arquivo index.php.
- Código:
<html>
<head>
<title>Login</title>
</head>
<body>
<?php if(isset($msg)) { echo $msg; } ?>
<form method="post" action="/index.php">
<input type="hidden" name="login">
<input type="text" name="usuario" placeholder="Usuario">
<input type="text" name="senha" placeholder="Senha">
<input type="submit" value="ENTRAR">
</form>
</body>
</html>
Agora criaremos o arquivo cadastro.php
- Código:
<html>
<head>
<title>Login</title>
</head>
<body>
<?php if(isset($msg)) { echo $msg; } ?>
<form method="post" action="/cadastro.php">
<input type="hidden" name="cadastro">
<input type="text" name="usuario" placeholder="Usuario">
<input type="text" name="senha" placeholder="Senha">
<input type="text" name="email" placeholder="Email">
<input type="submit" value="ENTRAR">
</form>
</body>
</html>
Agora criaremos o arquivo dados.php
- Código:
<?php
// inicia sessão (login)//
session_start();
// insere o arquivo conexao.php que conecta com o mysql //
require_once('conexao.php');
// verifica se o input login foi acionado.
if(isset($_POST[login])) {
// chama o value do input nome //
$nome = $_POST[nome];
// chama o value do input senha //
$senha = $_POST[senha];
// Chama dados da db pra confirma os dados //
$chq = mysql_query("SELECT * FROM usuarios WHERE nome='".$nome."' AND senha='".$senha."'");
// Checa se os dados voltaram correto //
if(mysql_num_rows($chq) > 0) {
// se voltar correto os dados valida o login //
$_SESSION[logado] = 1; // 1 = logado , NULL = não logado //
$_SESSION[nome] = $nome; // cria uma sessão com o nome do usuário //
} else {
$msg = "Nome ou senha incorretos";
}
}
if(isset($_POST[cadastro])) {
$nome = $_POST[usuario]);
$senha = $_POST[senha]);
$senha3 = md5($_POST[senha]);
$email = $_POST[email]);
if(isset($_POST[usuario])) {
$chq = mysql_query("SELECT nome FROM usuarios WHERE nome='".$nome."'");
if(mysql_num_rows($chq) > 0) {
$msg = "Nome em uso";
}
}else {
$msg = "Insira um nome de usuário.";
}
if(isset($_POST[senha])) {
} else {
$msg = "Insira uma senha.";
}
if(isset($_POST[email])) {
$chq = mysql_query("SELECT email FROM usuarios WHERE email='".$email."'");
if(mysql_num_rows($chq) > 0) {
$msg = "Email em uso.";
}
}else {
$msg = "Insira um email válido.";
}
if($msg === NULL) {
mysql_query("INSERT INTO (id,nome,senha,email) VALUES('','".$nome."','".$senha2."','".$email."')");
$_SESSION[logado] = 1;
$_SESSION[nome] = $nome;
}
} ?>
Para verificar se um usuário está logado ou não , basta inserir o <b>dados.php</b> em p.ex me.php com o seguinte código:
- Código:
<?php require_once('dados.php'); ?>
- Código:
<?php if($_SESSION[logado] == NULL) { echo"<script>document.location.replace('/index.php');</script>"; }?>
Nesse caso ele redirecionaria o usuário para a index.php se não estivesse logado.
Créditos: WictorP