Tutorial Login & Register Full Chapter 2 (Database Connection, User Login)
Hallo minna, kemarin kita sudah membuat design template nya, sekarang di chapter ke 2 ini kita akan melakukan koneksi database dan juga user login.
Pertama kita buat dulu 2 folder yaitu folder database dan functions di dalam folder core yang kemarin sudah kita buat pada chapter pertama. Kemudian buka text editor minna dan buat sebuah file yaitu init.php dan berikut kode nya :
Pertama kita buat dulu 2 folder yaitu folder database dan functions di dalam folder core yang kemarin sudah kita buat pada chapter pertama. Kemudian buka text editor minna dan buat sebuah file yaitu init.php dan berikut kode nya :
<?php
session_start() ;
require 'database/connect.php' ;
require 'functions/general.php' ;
require 'functions/users.php' ;
$errors = array() ;
?>
Kita simpan file init.php ini di folder core. Bisa di lihat disana ada require file, berarti kita harus menyertakan dan membuat 3 file lagi yaitu connect.php, general.php & users.php. Pertama kita buat connect.php untuk koneksi ke database kita. Berikut kode nya:
<?php
$connect_error = 'Sorry, Connection is Down' ;
mysql_connect('localhost' , 'username localhost kamu' , 'password localhost kamu') ;
mysql_select_db('database kamu') or die($connect_error);
?>
Simpan file tersebut di dalam folder database yang berada di dalam folder core. Kemudian kita buat general.php :
<?php
function sanitize($data) {
return mysql_real_escape_string($data) ;
}
function output_errors($errors) {
return '<ul><li>' . implode('</li><li>', $errors) . '</li></ul>' ;
}
?>
Save di dalam folder functions yang berada di dalam folder core. Selanjutnya buat users.php
berikut code nya :
<?php
function logged_in() {
return(isset($_SESSION['user_id'])) ? true : false ;
}
function user_exists($username) { //berfungsi untuk cek apakah akun ada
$username = sanitize($username) ;
return (mysql_result(mysql_query("SELECT COUNT(user_id) FROM users WHERE username
= '$username'"), 0) == 1) ? true : false ;
}
function user_active($username) { // berfungsi untuk aktivasi akun
$username = sanitize($username) ;
return (mysql_result(mysql_query("SELECT COUNT(user_id) FROM users WHERE username
= '$username' AND active = 1"), 0) == 1) ? true : false ;
}
function user_id_from_username($username) { // Validasi Login berdasarkan user_id di
database
$username = sanitize ($username) ;
return mysql_result(mysql_query("SELECT user_id FROM users WHERE username =
'$username'"), 0, 'user_id') ;
}
function login($username, $password) { // berfungsi untuk validasi login
$user_id = user_id_from_username($username) ;
$username = sanitize ($username) ;
$password = md5($password) ;
return (mysql_result(mysql_query("SELECT COUNT(user_id) FROM users WHERE username
= '$username' AND password = '$password'"), 0) == 1) ? $user_id : false ;
}
?>
Simpan juga di folder functions. Kemudian kita akan membuat file login.php :
<?php
include 'core/init.php' ;
if (empty($_POST) === false) {
$username = $_POST['username'] ;
$password = $_POST['password'] ;
if (empty($username) || empty($password) === true) {
$errors[] = 'Please enter your Username and Password' ;
} else if (user_exists($username) === false) {
$errors[] = 'Username or Password Doesn\'t Exist !' ;
} else if (user_active($username) === false) {
$errors[] = 'You Haven\'t Activated your account!' ;
} else {
if (strlen($password) > 40) {
$errors[] = 'Password is too Long Buddy' ;
}
$login = login($username, $password) ;
if ($login === false) {
$errors[] = 'Username/Password Combination is incorrect !' ;
} else { //Jika login Berhasil maka akan langsung di direct ke index.php
$_SESSION['user_id'] = $login ;
header('Location: index.php') ;
exit();
}
}
} else {
$errors[] = 'No Data Received' ;
}
include 'includes/overall/header.php' ;
if (empty($errors) === false) {
?>
<h2> We tried to log you in, but...</h2>
<?php
echo output_errors($errors);
}
include 'includes/overall/footer.php' ;
?>
Kemudian sekarang kita akan mengedit file index.php yang jauh jauh hari sudah kita buat. Buka index.php kemudian ganti seluruh kode nya dengan kode di bawah ini :
<?php
include 'core/init.php' ;
include 'includes/overall/header.php' ;
?>
<h1>Home</h1>
<p>Ini adalah konten Home</p>
<?php include 'includes/overall/footer.php' ;?>
Dan kemudian kita edit juga file aside.php. Cari file aside.php di folder includes dan kemudian ganti kode nya dengan yang dibawah ini :
<aside>
<?php
if (logged_in() === true ) {
echo 'Logged in<br><br>' ;
} else {
include 'includes/widget/login.php' ;
}
?>
</aside>
Sekarang coba di running. Coba minna masukkan username atau password yang asal – asalanmaka akan muncul tampilan seperti ini :
dan jika kita memasukkan username dan password yang benar kita akan di direct ke index.php tetapi sekarang tampilan index.php nya berubah :
Selanjutnya kita akan melakukan logout. Pertama kita
buat dulu file logout.php nya :
<?php
session_start();
//memulai session
session_destroy()
; // keluar / hancurkan session sehingga logout
header('Location:
index.php') ;
?>
Save file tersebut di folder project kita. Jangan di
folder includes ataupun core.
Dan akhirnya sudah kita sudah menyelesaikan login
system dan menuju tahap selanjutnya. Dakara sampai jumpa di chapter
berikut nya...
Untuk download pdf series nya silahkan di menu download
Jaa neeee....
Untuk download pdf series nya silahkan di menu download
Jaa neeee....
Langganan:
Posting Komentar
(
Atom
)
Tidak ada komentar :
Posting Komentar