1. Konfirmasi Via Email.
2. Google reCAPTCHA.
3. Role System.
4. Forgot Password.
Time To Code!.
CREATE TABLE IF NOT EXISTS `user` (
`id` int(13) NOT NULL AUTO_INCREMENT,
`nama` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`role` varchar(255) NOT NULL,
`is_active` varchar(255) NOT NULL,
`activate_code` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=18 ;
1. class.php
<?php
class db {
public $mysqli;
var $site_key = "site key kamu"; // replace dengan site key kamu
var $secret_key = "secret key kamu "; // replace dengan secret key kamu
function __construct() {
$this->mysqli = new mysqli('myhost','myuser','mypass','mydb');
if (mysqli_connect_error()) {
die('Connect Error (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}
}
function register($nama,$email,$password,$role,$code) {
$db = new db();
$server = $_SERVER['SERVER_NAME'];
$stmt = "INSERT INTO user(nama,email,password,role,is_active,activate_code) VALUES('$nama','$email','$password','$role','N','$code')";
if($db->mysqli->query($stmt) == true) {
/* email section */
$subject = "Register Akun Baru - LAYANANMU";
$body = "
<h1>SELAMAT DATANG DI LAYANANMU</h1><br /><br />
<b>Hai $nama.</b> Kami mendapat permintaan akun baru dengan email ini. <br />
Akun anda sudah dibuat, Tapi belum dikonfirmasi, Silahkan klik link dibawah ini untuk konfirmaskan akun anda :)
<br /><br />
<a href='http://$server/konfirmasi.php?account_id=$code&email_id=$email'>http://$server/konfirmasi.php?account_id=$code&email_id=$email</a><br /><br />
Terimakasih :)
";
$db->send_mail($subject,$body,$email);
return true;
} else {
return false;
}
}
function login($email,$password) {
$db = new db();
$stmt = "SELECT * FROM user WHERE email = '$email'";
if($udata = $db->mysqli->query($stmt)) {
if($udata = mysqli_fetch_array($udata)) {
if($password == $udata['password']) {
if($udata['is_active'] == "Y") {
$_SESSION["userSession"] = $email;
echo "<script type='text/javascript'>window.top.location='home.php';</script>";
} else {
echo "<script type='text/javascript'>window.top.location='?do=login&r=itv';</script>";
}
} else {
echo "<script type='text/javascript'>window.top.location='?do=login&r=wp';</script>";
}
}
}
}
function send_mail($subject,$body,$email) {
require 'phpmailer/PHPMailerAutoload.php';
$mail = new PHPMailer;
//$mail->SMTPDebug = 3; // Enable verbose debug output
$mail->isSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.kamu.com'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'email@domainkamu.com'; // SMTP username
$mail->Password = 'passwordmu'; // SMTP password
$mail->SMTPSecure = 'ssl'; // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to
$mail->setFrom('email@domainkamu.com', 'NAMA LAYANANMU');
$mail->addAddress($email); // Add a recipient
$mail->addReplyTo('info@example.com', 'Information');
// $mail->addCC('cc@example.com');
// $mail->addBCC('bcc@example.com');
// $mail->addAttachment('/var/tmp/file.tar.gz'); // Add attachments
// $mail->addAttachment('/tmp/image.jpg', 'new.jpg'); // Optional name
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = $subject;
$mail->Body = $body;
if(!$mail->send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
}
}
}
2. index.php
Didalam file PHP ini berisi kode untuk login, register, logout. Silahkan paste kode dibawah ini.
<?php
session_start();
include ('class.php');
if(isset($_GET['do']) && $_GET['do'] == "register") {
?>
<!DOCTYPE html>
<html>
<head>
<title>Belajar sistem register, login, logout dengan PHP dan MySQL</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src='https://www.google.com/recaptcha/api.js'></script>
</head>
<body>
<style>
body {
background: url(http://lorempixel.com/1920/1920/city/9/) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
.panel-default {
opacity: 0.9;
margin-top:30px;
}
.form-group.last { margin-bottom:0px; }
</style>
<div class="container">
<div class="row">
<div class="col-md-4 col-md-offset-7">
<div class="panel panel-default">
<div class="panel-heading">
<span class="glyphicon glyphicon-lock"></span> Register
</div>
<div class="panel-body">
<?php
/* Kode PHP Disini digunakan untuk memproses data yang dikirim user */
if(isset($_POST['btn-register'])) {
$db = new db();
$nama = trim($_POST['name']);
$email = trim($_POST['email']);
$pass = trim(md5(md5($_POST['password'])));
$g_response = $_POST['g-recaptcha-response'];
$code = base64_encode(base64_encode(uniqid()));
$role = "Moderator"; // default admin, silahkan ganti sesuai keinginan. saya may coba jadi moderator
$verify = file_get_contents("https://www.google.com/recaptcha/api/siteverify?response=".$g_response."&secret=".$db->secret_key."&remoteip=".$_SERVER['REMOTE_ADDR']);
if(preg_match("/true/",$verify) == true) {
$stmt = "SELECT * FROM user WHERE email = '$email'";
if($result = $db->mysqli->query($stmt)) {
if($result->num_rows > 0 ) {
echo "
<div class='alert alert-danger'>Maaf user dengan email <b>$email</b> Sudah terdaftar.</div>
";
} else {
if($db->register($nama,$email,$pass,$role,$code) == true ) {
echo "
<div class='alert alert-success'>Selamat!, Akun kamu telah berhasil dibuat :), Silahkan cek email kamu untuk konfirmasi akun :)</div>
";
} else {
echo "
<div class='alert alert-warning'>Maaf, Terjadi kesalahan, Harap coba lagi :)</div>
";
}
}
}
} else {
echo "
<div class='alert alert-danger'>Maaf, Captcha error, Harap isi captcha dengan benar!</div>
";
}
}
?>
<form class="form-horizontal" role="form" method="post">
<div class="form-group">
<label for="inputEmail3" class="col-sm-3 control-label">Username</label>
<div class="col-sm-9">
<input type="text" class="form-control" id="inputEmail3" placeholder="Username" name="name" required></div>
</div>
<div class="form-group">
<label for="inputEmail3" class="col-sm-3 control-label">Email</label>
<div class="col-sm-9">
<input type="email" class="form-control" id="inputEmail3" placeholder="Email" name="email" required></div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-3 control-label">Password</label>
<div class="col-sm-9">
<input type="password" class="form-control" id="inputPassword3" placeholder="Password" name="password" required><br/>
</div>
<div class='col-md-6 col-md-ofset-4'>
<br />
<div class="g-recaptcha" style="margin-left:15px;" name="g_response" data-sitekey="<?php $db= new db(); echo $db->site_key; ?>"></div>
</div>
<div class='col-sm-9'>
<br />
<button class="btn btn-success" type="submit" name="btn-register">REGISTER</button> OR <a class="btn btn-warning" href="?do=login">LOGIN</a>
</div>
</form>
</div>
<div class="form-group">
<div class="col-sm-9">
<hr>
Copyright © <?php echo date("Y") ?> rizalfakhri
</body>
</html>
<?php
} elseif(isset($_GET['do']) && $_GET['do'] == "login") {
?>
<!DOCTYPE html>
<html>
<head>
<title>Belajar sistem register, login, logout dengan PHP dan MySQL</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src='https://www.google.com/recaptcha/api.js'></script>
</head>
<body>
<style>
body {
background: url(http://lorempixel.com/1920/1920/city/9/) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
.panel-default {
opacity: 0.9;
margin-top:30px;
}
.form-group.last { margin-bottom:0px; }
</style>
<div class="container">
<div class="row">
<div class="col-md-4 col-md-offset-7">
<div class="panel panel-default">
<div class="panel-heading">
<span class="glyphicon glyphicon-lock"></span> Login
</div>
<div class="panel-body">
<?php
if(isset($_GET['r']) && $_GET['r'] == "itv") {
echo "
<div class='alert alert-warning'>Maaf, Akun in belum dikonfirmasi, SIlahkan cek email anda dan klik link konfirmasinya :)</div>
";
}
if(isset($_GET['r']) && $_GET['r'] == "wp") {
echo "
<div class='alert alert-danger'>Password yang anda masukan salah!, Silahkan coba lagi :)</diV>
";
}
/* Kode PHP Disini digunakan untuk memproses data yang dikirim user */
if(isset($_POST['btn-login'])) {
$db = new db();
$email = trim($_POST['email']);
$password = trim(md5(md5($_POST['password'])));
$g_response = $_POST['g-recaptcha-response'];
$verify = file_get_contents("https://www.google.com/recaptcha/api/siteverify?response=".$g_response."&secret=".$db->secret_key."&remoteip=".$_SERVER['REMOTE_ADDR']);
if(preg_match("/true/",$verify)) {
if($result = $db->mysqli->query("SELECT * FROM user WHERE email = '$email'")) {
if($result->num_rows > 0) {
$db->login($email,$password);
} else {
echo "
<div class='alert alert-danger'>Maaf username dengan email <b>$email</b>, Belum terdaftar.</div>
";
}
}
} else {
echo "
<div class='alert alert-danger'>Maaf, Capctha Error, Harap isi captcha dengan benar!</div>
";
}
}
?>
<form class="form-horizontal" role="form" method="post">
<div class="form-group">
<label for="inputEmail3" class="col-sm-3 control-label">Email</label>
<div class="col-sm-9">
<input type="email" class="form-control" id="inputEmail3" placeholder="Email" name="email" required></div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-3 control-label">Password</label>
<div class="col-sm-9">
<input type="password" class="form-control" id="inputPassword3" placeholder="Password" name="password" required><br/>
<a href="lupa_password.php" style="text-align:right;">Lupa Password</a>
</div>
</div>
<div class="col-md-6">
<br />
<div class="g-recaptcha" style="margin-right:200px;" name="g_response" data-sitekey="<?php $db= new db(); echo $db->site_key; ?>"></div>
</div>
<div class="col-md-9">
<br />
<button class="btn btn-success" type="submit" name="btn-login">LOGIN</button> OR <a class="btn btn-warning" href="?do=register">REGISTER</a>
</div>
<div class="form-group">
<div class="col-md-9 col-md-offset-2">
<hr>
Copyright © <?php echo date("Y") ?> rizalfakhri
</body>
</html>
<?php
} elseif (isset($_GET['do']) && $_GET['do'] == "logout") {
session_destroy();
header("location: ?do=login");
} else {
if(empty($_SESSION['userSession'])) {
header("location: ?do=login");
} else {
header("location: home.php");
}
}
3. konfirmasi.php
File konfirmasi.php ini digunakan untuk mengaktifkan akun user yang baru saja registe, Silahkan paste kode dibawah ini.
<?php
include ('class.php');
$email_id = $_GET['email_id'];
$account_id = $_GET['account_id'];
$server = $_SERVER['SERVER_NAME'];
$db = new db();
$stmt = "SELECT * FROM user WHERE email = '$email_id'";
if($result = $db->mysqli->query($stmt)) {
if($result = mysqli_fetch_array($result)) {
if($result['is_active'] == "N") {
if($result['activate_code'] == $account_id) {
$db->mysqli->query("UPDATE user SET is_active = 'Y' WHERE email = '$email_id'");
$msg = "
<div class='alert alert-success'>
<b>Selamat!</b> Akun anda berhasil di konfirmasi :), Silahkan login dengan klik tombol dibawah ini :)
</div>
<a class='btn btn-success' style='width:100%' href='http://$server/?do=login'>LOGIN</a>
";
} else {
$msg = "
<div class='alert alert-warning'>Terjadi kesalahan, Account id anda tidak valid!</div>
";
}
} else {
$msg = "
<div class='alert alert-warning'>Akun anda sudah diaktivasi sebelumnya, SIlahkan login dengan klik tombol dibawah ini.
</div>
<a class='btn btn-success' style='width:100%' href='http://$server/?do=login'>LOGIN</a>
";
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Belajar sistem register, login, logout dengan PHP dan MySQL</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
</head>
<body>
<style>
body {
background: url(http://lorempixel.com/1920/1920/city/9/) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
.panel-default {
opacity: 0.9;
margin-top:30px;
}
.form-group.last { margin-bottom:0px; }
</style>
<div class="container">
<div class="row">
<div class="col-md-6 col-md-offset-3">
<div class="panel panel-default">
<div class="panel-heading">
<span class="glyphicon glyphicon-check"></span> KONFIRMASI
</div>
<div class="panel-body">
<?php if(isset($msg)) { echo $msg; } ?>
<div class="form-group">
<div class="col-md-6 col-md-offset-3">
<hr>
Copyright © <?php echo date("Y") ?> rizalfakhri
</body>
</html>
4. lupa_password.php
File ini digunakan user untuk mensubmit email mereka jida mereka lupa password akunya, untuk mendapatkan link reset passwordnya. Silahkan paste kode dibawah ini.
<!DOCTYPE html>
<html>
<head>
<title>Belajar sistem register, login, logout dengan PHP dan MySQL</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src='https://www.google.com/recaptcha/api.js'></script>
</head>
<body>
<style>
body {
background: url(http://lorempixel.com/1920/1920/city/9/) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
.panel-default {
opacity: 0.9;
margin-top:30px;
}
.form-group.last { margin-bottom:0px; }
</style>
<div class="container">
<div class="row">
<div class="col-md-6 col-md-offset-3">
<div class="panel panel-default">
<div class="panel-heading">
<center><span class="glyphicon glyphicon-lock"></span> LUPA SANDI</center>
</div>
<div class="panel-body">
<?php
if(isset($_POST['btn-lupa-password'])) {
include ('class.php');
$db = new db();
$email = $_POST['email'];
if($result = $db->mysqli->query("SELECT * FROM user WHERE email = '$email'")) {
if($result->num_rows > 0 ) {
if($result = mysqli_fetch_array($result)) {
$server = $_SERVER['SERVER_NAME'];
$nama = $result['nama'];
$code = $result['activate_code'];
$subject = "LUPA PASSWORD LAYANANMU";
$body = "
Hai $nama, <br /><br />
Beberapa saat yang lalu, Kami mendapat permintaan reset password dari akun anda, <br /><br />
Untuk meresetnya, silahkan klik link dibawah ini.<br /><br />
<a href='http://$server/reset_password.php?account_id=$code&email_id=$email'>http://$server/reset_password.php?account_id=$code&email_id=$email</a><br /><br />
WARNING!! <br />
Jika anda tidak melakukanya jangan pernah klik link diatas :) <br />
Terimakasih.
";
$db->send_mail($subject,$body,$email);
echo "
<div class='alert alert-success'>Sukses, Silahkan cek email anda untuk reset password :) </div>
";
}
}
}
}
?>
<form method="post">
<div class="form-group">
<label for="inputEmail3" class="col-sm-3 control-label">Email</label>
<div class="col-sm-9">
<input type="email" class="form-control" id="inputEmail3" placeholder="Email" name="email" required><br />
<button class='btn btn-success' type="submit" name="btn-lupa-password">SUBMIT</button>
</div>
</form>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-3">
<hr>
Copyright © <?php echo date("Y") ?> rizalfakhri
</body>
</html>
5. reset_password.php
Setelah user mendapat link reset passwordnya, User akan diarahkan ke file ini untuk membuat password baru mereka, SIlahkan paste kode dibawah ini.
<?php
if(!isset($_GET['account_id']) && !isset($_GET['email_id']) or !isset($_GET['account_id']) or !isset($_GET['email_id'])) {
header("location: home.php");
} else {
include ('class.php');
$account_id = $_GET['account_id'];
$email_id = $_GET['email_id'];
$code = base64_encode(md5(uniqid()));
$db = new db();
if($result = $db->mysqli->query("SELECT * FROM user WHERE email = '$email_id'")) {
if($result = mysqli_fetch_array($result)) {
if($account_id == $result['activate_code']) {
$msg = "
<form method='post'>
<div class='col-sm-9'>
<input type='password' class='form-control' id='inputEmail3' placeholder='Password Baru' name='pass' required><br />
</div>
<div class='col-sm-9'>
<input type='password' class='form-control' id='inputEmail3' placeholder='Konfirmasi Password' name='cpass' required><br />
<button class='btn btn-success' type='submit' name='btn-reset-password'>SUBMIT</button>
</div>
</form>
";
} else {
$msg = "
<div class='alert alert-warning'>Maaf, account id anda tidak valid!</div>
";
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Belajar sistem register, login, logout dengan PHP dan MySQL</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src='https://www.google.com/recaptcha/api.js'></script>
</head>
<body>
<style>
body {
background: url(http://lorempixel.com/1920/1920/city/9/) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
.panel-default {
opacity: 0.9;
margin-top:30px;
}
.form-group.last { margin-bottom:0px; }
</style>
<div class="container">
<div class="row">
<div class="col-md-6 col-md-offset-3">
<div class="panel panel-default">
<div class="panel-heading">
<center> <span class="glyphicon glyphicon-lock"></span> RESET PASSWORD</center>
</div>
<div class="panel-body">
<?php
if(isset($msg)) {
if(isset($_POST['btn-reset-password'])) {
$db = new db();
$pass = trim(md5(md5($_POST['pass'])));
$new_pass = trim(md5(md5($_POST['cpass'])));
if($pass != $new_pass) {
echo "
<div class='alert alert-danger'>Konfirmasi Password baru harus sama.</div>
";
} else {
if($db->mysqli->query("UPDATE user SET password = '$new_pass' WHERE email = '$email_id'")) {
echo "
<div class='alert alert-success'>Sukses, Password anda telah berhasil diperbarui :)</div>
";
$db->mysqli->query("UPDATE user SET activate_code = '$code' WHERE email='$email_id'");
}
}
}
echo $msg;
}
?>
<div class="form-group">
<div class="col-md-6 col-md-offset-3">
<hr>
Copyright © <?php echo date("Y") ?> rizalfakhri
</body>
</html>
<?php
}
6. home.php
JIka user berhasil login, User akan dialihkan ke halaman ini. Silahkan paste kode dibawah ini.
<?php
session_start();
if(empty($_SESSION["userSession"])) {
// kode yang akan di eksekusi jika user belum login, misal di redirect ke login page dll
echo "anda belum login";
} else {
// kode yang akan di eksekusi jika use rberhasil login.
include('class.php');
$db = new db();
$email = $_SESSION["userSession"];
$role = $db->mysqli->query("SELECT * FROM user WHERE email = '$email'");
if($role = mysqli_fetch_array($role)) {
echo " Hai ". $role['nama'].", Role / Pangkat anda adalah ". $role['role']." | <a href='//".$_SERVER['REMOTE_ADDR']."?do=logout'>Logout</a>";
}
}
?>
Kode home.php diatas hanya sebagai contoh, Sisanya kreasikan sendiri sesuai project yang sedang kamu kerjakan,.Oiya karena ini library PHPMailer, Maka kamu membutuhkan SMTP (Simple Mail To Protocol) Untuk mengirim email, JIka tidak maka kamu tidak bisa mengirim email, Kamu bisa gunakan smtp gmail atau yahoo atau jika kamu sudah berlanggana email service kamu bisa enggunakan smtp tersebut.
SELESAI....
1. class.php
function login($email,$password) {
$db = new db(); // Menginisialisasi class / object
$stmt = "SELECT * FROM user WHERE email = '$email'"; // SQL statement untuk memeriksa data apakah ada record di table user dengan email tersebut
if($udata = $db->mysqli->query($stmt)) { // Baris kode ini digunakan untuk mengeksekusi statement diatas
if($udata = mysqli_fetch_array($udata)) { // Baris kode ini untuk mem-fetch atau mengambil data ke dalam assosiative array sehingga bisa dipanggil dengan mudah
if($password == $udata['password']) { // Baris ini digunakan untuk memeriksa, Apakah password yang di submit user sama dengan record di database
if($udata['is_active'] == "Y") { // Baris ini digunakan untuk memeriksa akun user tersebut sudah di aktivasi atau belum
$_SESSION["userSession"] = $email; // Baris kode ini adalah kode untuk membuat session dan kode ini akan di eksekusi apabila semua kondisi diatas true
echo "<script type='text/javascript'>window.top.location='home.php';</script>"; // Baris kode ini digunakan untuk mengalihkan ke home.php, karna header() tidak berfungsi, maka saya memakai javascript untuk redirect
} else { // Kode ini digunakan apabila kondisi if($udata['is_active'] == "Y") {} false
echo "<script type='text/javascript'>window.top.location='?do=login&r=itv';</script>"; // Baris kode ini akan di eksekusi apabila kondisi if($udata['is_active'] == "Y") {} false, yaitu memberitahu user bahwa akun mereka belum diaktivasi.
}
} else { // kode ini digunakan apabila kondisi if($password == $udata['password']) {} false
echo "<script type='text/javascript'>window.top.location='?do=login&r=wp';</script>"; // kode ini akan di eksekusi apabila kondisi if($password == $udata['password']) {} adalah false. yang berarti memberitahu user bahwa password yang mereka masukan salah.
}
}
}
2. index.php
Sama seperti tutorial kemarin, Saya menggunakan $_GET untuk mengalihkan page, Seperti untuk login saya menggunakan kode dibawah ini untuk membuat /?do=login bekerja.
if(isset($_GET['do']) && $_GET['do'] == "login") {
...
}
Kira2 seperti itu cara kerja index.php untuk mengalihkan page.
3. lupa_password.php
Didalam file ini, Server akan meminta email user yang akan di reset passwordnya, Lalu di cek apakah terdapat record email tersebut di database, Jika ada maka server akan mengirim email ke email tersebut yang berisi link reset password.4. reset_password.php
File ini digunakan user untuk membuat password baru, Tapi file ini tidak bisa diakses secara langsung melainkan harus mempunyai account_id dan email_id dulu yang dikirim ke email saat user request reset password, Sehingga aman dari reset password tanpa sepengetahuan user alias pembajakan :p.5. konfirmasi.php
File ini digunakan untuk konfirmasi user yang abru saja register, Alur kode dialam file ini adalah seperti ini, Saat user register, Server akan mengirim email yang berisi link konfirmasi yang terdapat account_id, Tanpa account_id user tidakbisa konfirmasi akun, Jika account_id valid maka server akan mengupdate record database mengubah "N" Menjadi "Y" sehingga server menganggap bahwa akun tersebut sudah diaktivasi. :)6. home.php
Didalam file inilah semua proses register, login dll selesai, Dan user dianggap telah login oleh server dan dapat mengakses file home.php ini.
PERLU DIINGAT!
1. pemberian hak akses
2. Selalu tempatkan kode ini.
Pasti ada beberapa page/ file php yang mewajibkan user untuk login, Maka Selalu tempatkan kode dibawah ini di baris paling atas file php yang mewajibkan user untuk login.
session_start();
if(empty($_SESSION["userSession"])) {
// kode yang akan di eksekusi jika user belum login, misal di redirect ke login page dll
} else {
// kode yang akan di eksekusi jika user rberhasil login.
}



