Selamat datang lagi sobat.
Di part 2 ini kita akan membuat proses
registrasi dan login dan juga SESSION.
Pada
tutorial Part1 kita sudah membuat tampilan dan form serta database
'tutorialjaco' dan table'user'. kali kita akan gunakan file tersebut untuk proses
registrasi dan login.
bagi sobat yang belum membaca tutorial part 1, klik di sini.
Sebelumnya
mari kita bahas sedikit tentang SESSION. Session adalah suatu cara agar suatu
variabel dapat diakses pada banyak halaman web. Session biasanya disimpan di
Folder Temporary( biasanya untuk ampss pada c:\program files\Ampss\temp ).
Fungsi
Session yang akan kita pakai antara lain :
session_start() bergungsi mengaktifkan session.
session_destroy() berfungsi untuk menghapus session beserta file sessionnya.
session_start() bergungsi mengaktifkan session.
session_destroy() berfungsi untuk menghapus session beserta file sessionnya.
session_unset()berfungsi
untuk menghapus semua variabel yang terdaftar dalam session.
Nah,
intinya kita akan memakai file $_SESSION['id_user'] yang login untuk
dipakai pada banyak halaman web yang kita bangun.
Sekarang
kita akan buat dulu script untuk menyimpan Akun user yang daftar. Karena pada
tutorial part 1 proses daftar memanggil halaman simpan_account.php , maka kita
buat file simpan_account.php
1. Buatlah File php baru dan
beri nama simpan_account.php
isi file ini
adalah sebagai berikut :
<?php
include"library.php";
// memanggil fungsi library
if(isset($_POST['kirim'])){
// kalau di klik daftar maka diproses
$conn=koneksi_db();
//memanggil koneksi database
//menampung
variabel yg di POST dari form registrasi
$nama_depan=ucwords($_POST['nama_depan']);
$nama_belakang=ucwords($_POST['nama_belakang']);
$email=$_POST['email'];
$userpass=$_POST['password'];
$kelamin=$_POST['kelamin'];
$tanggal=$_POST['tanggal'];
//
Validasi jika isi registrasi kosong
if
(empty($_POST['nama_depan'])) die ("<script>alert('Anda Belum
Mengisikan Nama Depan');window.location='javascript:history.go(-1)';</script>");
if
(empty($_POST['nama_belakang'])) die ("<script>alert('Anda Belum
Mengisikan Nama
Belakang');window.location='javascript:history.go(-1)';</script>");
if
(empty($_POST['kelamin'])) die ("<script>alert('Anda Belum
Mengisikan Jenis
Kelamin');window.location='javascript:history.go(-1)';</script>");
if
(empty($_POST['tanggal'])) die ("<script>alert('Anda Belum
Mengisikan Tanggal
Lahir');window.location='javascript:history.go(-1)';</script>");
if
(empty($_POST['email'])) die ("<script>alert('Anda Belum Mengisikan
Email');window.location='javascript:history.go(-1)';</script>");
if
(empty($_POST['password'])) die ("<script>alert('Anda Belum
Mengisikan
Password');window.location='javascript:history.go(-1)';</script>");
//Proses
query insert ke database. variabel yg diisi null nantinya akan di proses ketika
user memilih menu edit informasi info user.
$query="insert
into user
(id_user,nama_depan,nama_belakang,email,password,kelamin,tgl_lahir,agama,foto_profil,status,alamat,hobi,level,aktif,profil_singkat)values(null,'$nama_depan','$nama_belakang','$email','$userpass','$kelamin','$tanggal',null,null,null,null,null,'MEMBER','Y',null)";
$exe=mysql_query($query,
$conn); //eksekusi query insert ke database
//proses
setelah eksekusi
if
($exe){
echo
"<script>location.replace('daftar_sukses.php')</script>";
}else{
echo "<script>alert('daftar Gagal')
location.replace('index.php')</script>";
}
}
else//
else isset
{
unset($_POST['kirim']);
}
?>
2. Jika pendaftaran akun sukses,
maka akan diarahkan ke halaman web daftar_sukses.php . Maka
dari itu kita
buat dulu halaman 'daftar_sukses.php'
kode syntak
daftar_sukses.php :
<?php
include("library.php");//Memanggil
function library
?>
<!DOCTYPE
html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Selamat
Datang</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/bootstrap-theme.min.css">
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script>
</head>
<body>
<?php
navbarindex();//memanggil
fungsi navbarindex
modallogin();//memanggil
fungsi modallogin
?>
<div class="container">
<div class="jumbotron">
<h2>WORLD-INFO</h2>
<p>Good time with my blog</p>
</div>
<div class="row">
<div class="col-md-4">
</div>
<!-- ISI -->
<div class="col-md-4">
<h3><center>PENDAFTARAN AKUN SUKSES!
SILAHKAN LOGIN</center></h3>
<form name="login" method="post" action="login.php">
<div class="form-group">
<label for="inputEmail">Email</label>
<input type="email" class="form-control" id="inputEmail" placeholder="Email" name="email">
</div>
<div class="form-group">
<label for="inputPassword">Password</label>
<input type="password" class="form-control" id="inputPassword" placeholder="Password" name="password">
</div>
<button type="submit" class="btn
btn-primary">Login</button>
</form>
</div>
</div>
<?php
footer();//
memanggil fungsi footer
?>
</div>
</body>
</html>
Tampilan daftar_sukses.php |
Halaman
ini berfungsi untuk menampilkan 'Pesan Daftar Sukses' dan menyediakan Form Login
dilayar untuk proses login. Untuk pendaftaran dengan validasi ke Email atau
daftar dengan Facebook akan dibahas dalam lain kesempatan.
3. Membuat fungsi
untuk proses login. Buatlah file php baru dengan nama 'login.php' dan isikan
code seperti berikut :
<?php
session_start();//
memulai/membuat file Session
include ("library.php");//
memanggil fungsi library
$link=koneksi_db();//membuat
koneksi ke database
//menampung
variabel yg dikirim dari form login
$email = $_POST['email'];
$password =
$_POST['password'];
//cek query
$cek =
mysql_query("SELECT * FROM user WHERE email ='$email' AND password
='$password'");
if(mysql_num_rows($cek)==1){//jika
ada yang cocok akan bernilai 1
$hasil=mysql_fetch_array($cek);
$_SESSION['id_user']
= $hasil['id_user'];// membuat variabel session['id_user']
$_SESSION['nama_depan']
= $hasil['nama_depan'];// membuat variabel session['nama_depan']
$_SESSION['nama_belakang']
= $hasil['nama_belakang'];// membuat variabel session['nama_belakang']
header("location:home.php");//
jika sukses masuk ke home.php
}
else
{
header("location:gagallogin.php");//
jika login gagal maka masuk ke halaman gagallogin.php
}
?>
4.
Karena pada proses login diatas memanggil halaman web gagallogin.php maka kita
buat file php dengan nama gagallogin.php
Isi halaman ini
mirip dengan halaman daftar_sukses.php bedanya hanya Pesan yang tertulis yaitu
pesan Email dan password salah.
Kode syntak
gagallogin.php
<?php
include("library.php");
?>
<!DOCTYPE
html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Selamat
Datang</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/bootstrap-theme.min.css">
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script>
</head>
<body>
<?php
navbarindex();
modallogin();
?>
<div class="container">
<div class="jumbotron">
<h2>WORLD-INFO</h2>
<p>Good time with my blog</p>
</div>
<div class="row">
<div class="col-md-4">
</div>
<div class="col-md-4">
<h3><center>Password Email Anda Salah. Silahkan Ulangi
Login!</center></h3>
<form name="login" method="post" action="login.php">
<div class="form-group">
<label for="inputEmail">Email</label>
<input type="email" class="form-control" id="inputEmail" placeholder="Email" name="email">
</div>
<div class="form-group">
<label for="inputPassword">Password</label>
<input type="password" class="form-control" id="inputPassword" placeholder="Password" name="password">
</div>
<button type="submit" class="btn
btn-primary">Login</button>
</form>
</div>
</div>
<?php
footer();
?>
</div>
</body>
</html>
Tampilan gagallogin.php |
5. Jika Login
sukses, maka user akan dialihkan ke halaman Home. Halaman home yang kita buat
kali ini masih home sederhana.Untuk pembuatan home yang lengkap akan dibahas
pada tutorial selanjutnya. Pada home kali ini akan dibuat button untuk logout.
kita buat dulu halaman home sederhananya, buat file php baru
dengan nama home.php dan isi dengan kode berikut :
<?php
session_start();
include("library.php");
$id_user=$_SESSION['id_user'];//memakai
variabel id_user dari SESSION
$nama_depan=$_SESSION['nama_depan'];
$nama_belakang=$_SESSION['nama_belakang'];
?>
<!DOCTYPE
html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>HOME</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/bootstrap-theme.min.css">
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div class="jumbotron">
<h2>WORLD-INFO</h2>
<p> Good time with my blog</p>
</div>
<div class="row">
<div class="col-md-4">
</div>
<div class="col-md-4">
<center> <h3>SUKSES LOGIN</h3>
SELAMAT
DATANG!! INI ADALAH HALAMAN
HOME SEMENTARA <br>
Anda Login dengan id_user=<?php echo
$id_user;?><br>
nama anda : <?php echo $nama_depan.'
'.$nama_belakang;?><br>
SILAHKAN LOGOUT
DISINI<br></center>
<p><a href="logout.php" class="btn
btn-warning btn-lg btn-block">LOGOUT</a></p>
</div>
</div>
<?php
footer();
?>
</div>
</body>
</html>
Tampilan Home.php sementara |
6.
Button logout pada menu script diatas akan memanggil halaman logout.php maka
kita buat sebuah halaman baru dengan nama logout.php
isi kode syntak halaman
ini sebagai berikut :
<html>
<head>
<title>
Logout </title>
<meta http-equiv="Content-Type" content="text/html;
charset=utf-8">
</head>
<body bgcolor="black">
<?php
session_start();
unset($_SESSION['id_user']);
echo
"<script>
location.replace('index.php')</script>";
?>
<center>
</center>
</body>
</html>
<span style="line-height:
1.428571429; font-family: 'Helvetica Neue', Helvetica
Fungsi dari logout
ini adalah menghapus nilai dari variabel session['id_user']. setelah logout
user akan diarahkan ke halaman awal web yaitu index.php
Itulah tutorial
part 2 hari ini, jika ada kesalahan dalam penulisan kata mohon di maafkan.
Jika sobat
mengalami notif error pada kodenya, silahkan laporkan di kotak komentar, saya
akan mencoba menolong sobat.
Terima Kasih
Untuk
tutorial selanjutnya pada part 3, kita akan mencoba membuat validasi akses pada
setiap halaman dengan memanfaatkan $_SESSION['id_user'].
Maksud validasi hak akses ini adalah jika user belum
login maka dia tidak bisa mengakses
halaman
home dan halaman lain yang membutuhkan login.
Sampai Jumpa lagi
sobat di tutorial selanjutnya
No comments:
Post a Comment