Tutorial Login & Register Full Chapter 3 (User Data, Disable Ban-Account)
Kita Lanjut lagi dalam tutorial membuat
Login dan Register System dengan PHP. Kali ini kita akan masuk ke chapter 3
dimana kita akan membuat user data yaitu kemampuan untuk mengumpulkan data dan juga
disable-ban account.
Pada chapter sebelumnya, kita berhasil
melakukan sebuah login, sekarang kita akan melanjutkan nya. Pertama kita buka
aside.php, di chapter sebelumnya kita hanya menampilkan echo saja. Kali ini
kita akan menginclude file lain di aside.php edit file nya menjadi seperti
dibawah ini :
<aside>
<?php
if(logged_in() === true ) {
include 'includes/widget/loggedin.php' ;
echo '<a href="logout.php"><b>Logout</b></a>';
} else {
include 'includes/widget/login.php' ;
}
?>
</aside>
Karena di atas ada file yang di
include, kita akan membuat sebuah file baru bernama loggedin.php, sementara
kita isi dulu coding nya seperti ini :
<div class="widget">
<h2>Hello, Anda telah Login ! </h2>
<div class="inner">
Links
</div>
</div>
Kita tinggalkan dulu sementara,
sekarang kita beralih ke users.php untuk membuat sebuah function baru. Tambahkan
function baru di users.php simpan saja dibagian paling atas atau dimanapun
terserah minna sih hihi :D, berikut code nya :
function user_data($user_id) {
$data = array() ;
$user_id = (int)$user_id;
$func_num_args = func_num_args();
$func_get_args = func_get_args();
if ($func_num_args > 0) {
unset($func_get_args[0]) ;
$fields ='`' . implode('`, `', $func_get_args) . '`';
$data = mysql_fetch_assoc(mysql_query("SELECT $fields FROM users WHERE user_i = $user_id"));
return $data ;
}
}
Sekarang buka init.php dan kita menjadi
seperti ini :
<?php
session_start() ;
require 'database/connect.php' ;
require 'functions/general.php' ;
require 'functions/users.php' ;
if (logged_in() === true) {
$session_user_id = $_SESSION['user_id'];
$user_data = user_data($session_user_id, 'user_id', 'first_name', 'last_name', 'username', 'password' , 'email') ;
}
$errors = array() ;
?>
Kemudian kita beralih lagi ke
loggedin.php yang sudah kita buat tadi. Edit menjadi seperti ini :
<div class="widget">
<h2>Hello, <?php echo $user_data['first_name'] ;?></h2>
<div class="inner">
Links
</div>
</div>
Maka ketika di running, akan
menampilkan first_name dari database kita karena kita telah memasukkan fungsi <?php echo $user_data['first_name']
;?> sehingga parameter yang telah kita buat di init.php yang kemudian di
eksekusi oleh function yang tadi kita buat diatas, sehingga akan menampilkan
sebuah parameter dari first_name yang ada didatabase, seperti ini kira-kira :
Bisa dilihat kotak hitam dalam
gambar? Itu merupakan parameter first_name yg diakses melalui database kita. Dan
kita telah membuat cara yang fleksibel mengambil data dari database. Jadi penjelasan
singkat nya seperti ini : kita meng include loggedin.php karena sebelum nya
kita sudah log in, di dalam init.php akan mengecek apakah benar sudah login
kemudian di save session nya dan kemudian mengambil user data dan di tampilkan
seperti gambar diatas.
Selanjutnya kita akan melakukan
disable-ban account. Kita akan cek jika akun user sudah aktif dan jika user
akun belum di aktifkan maka sistem tidak akan bisa memberikan izin untuk login
dan malah akan di logout dengan sendiri nya ketika akan melakukan login.
Kita edit kembali init.php, menjadi
seperti ini :
<?php
session_start() ;
require 'database/connect.php' ;
require 'functions/general.php' ;
require 'functions/users.php' ;
if (logged_in() === true) {
$session_user_id = $_SESSION['user_id'];
$user_data = user_data($session_user_id, 'user_id', 'first_name', 'last_name', 'username', 'password' , 'email') ;
if (user_active($user_data['username']) === false) {
session_destroy();
header('Location: index.php');
exit();
}
}
$errors = array() ;
?>
Ketika sebelumnya kita running kita
masih dalam keadaan sudah log in. Nah untuk mengetes nya, kita buka dulu
localhost/phpmyadmin kita, kemudian ubah record user yang sudah ada di database
pada column active yang asal nya bernilai 1 yang berarti akun sudah aktif, maka
kita ubah menjadi 0 (tidak aktif). Kemudian klik go untuk menyimpan. Kemudian refresh
halaman nya, dan otomatis akan logout sendiri.
Demikian tutorial kali ini saya cukupkan
sekian, Gomennasai jika penjelasan yang saya berikan berbelit belit hehe maklum
karena tidak terlalu pandai dalam menjelaskan dengan kata kata hahahah :D
Untuk download pdf dan source yang
baru sampai chapter 3 ini, silahkan sedot di menu download.
See you in the next tutorial....
Langganan:
Posting Komentar
(
Atom
)
Tidak ada komentar :
Posting Komentar