Login e registro pdo simples .
#Database
- Código:
-- phpMyAdmin SQL Dump
-- version 4.1.12
-- http://www.phpmyadmin.net
--
-- Host: 127.0.0.1
-- Generation Time: 08-Set-2014 às 02:38
-- Versão do servidor: 5.6.16
-- PHP Version: 5.5.11
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `sistema`
--
-- --------------------------------------------------------
--
-- Estrutura da tabela `users`
--
CREATE TABLE IF NOT EXISTS `users` (
`id` int(55) NOT NULL,
`username` varchar(55) NOT NULL,
`password` varchar(55) NOT NULL,
`email` varchar(55) NOT NULL,
`level` varchar(55) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
#Connect.php
- Código:
<?php
$host = "localhost";
$user = "root";
$pass = "senha";
$dbname = "sistema";
$pdo = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
if (isset($_POST['login'])) {
$username = $_POST["uname"];
$password = $_POST["upass"];
$log = $pdo->prepare("SELECT * FROM users WHERE username=:user AND password=:pass");
$log->bindValue(':user', $username);
$log->bindValue(':pass', $password);
$log->execute();
$rows = $log->fetch(PDO::FETCH_NUM);
if ($rows > 0) {
session_start();
$_SESSION['uname'] = $username;
$_SESSION['upass'] = $password;
header("location: index.php");
} else {
session_destroy();
unset($_SESSION['uname']);
unset($_SESSION['upass']);
header('location:login.php');
}
}
if (isset($_POST['register'])) {
$username = $_POST["uname"];
$password = $_POST["upass"];
$email = $_POST['uemail'];
$reg = $pdo->prepare("INSERT INTO users(username,password,email)VALUES(:user,:pass,:email)");
$reg->bindValue(':user', $username);
$reg->bindValue(':pass', $password);
$reg->bindValue(':email', $email);
$check = $pdo->prepare("SELECT * FROM users WHERE username=? AND password=? AND email=?");
$check->execute(array(
$username,
$password,
$email
));
if ($check->rowCount() == 0):
$reg->execute();
echo 'Cadastrado com Sucesso';
else:
echo 'Usuario existente';
endif;
}
?>
#Codigo para Index
- Código:
<?php
include 'connect.php';
session_start();
if ( !isset($_SESSION['uname']) and !isset($_SESSION['upass']) ) {
session_destroy();
unset ($_SESSION['uname']);
unset ($_SESSION['upass']);
header('location:login.php');
}
if (isset($_POST['sair'])){
session_destroy();
unset ($_SESSION['uname']);
unset ($_SESSION['upass']);
echo 'Deslogado';
}
?>
Tabelas a ser criar para test username , password , email
By Milk