Genzo newbie just share =) Genzo noob just share: Register, Login, dan Logout Script Pada PHP
selamat datang di blog tutorial saya ,blog ini di buat sederhana untuk memudahkan anda dalam membaca dan belajar :D .keep calm and enjoy =) . /yusufgenzo

Register, Login, dan Logout Script Pada PHP

Istilah login, logout dan register pasti sudah tidak asing lagi bagi kita yang hobi browsing karena hampir semua website yang kita kunjungi sudah menggunakan sistem ini. Bagi yang belum tahu,saya beri contoh yakni pada situs Facebook. Di situs ini untuk bisa mengakses halaman-halaman ataupun fasilitas yang ada didalamnya kita diwajibkan untuk login terlebih dahulu dengan cara mengisi username dan password. Jika belum punya,kita harus mendaftar terlebih dahulu baru kemudian login kembali menggunakan username dan password yang telah kita daftarkan tadi. Setelah berhasil masuk kita bisa keluar dari akun kita dengan cara logout.
Ok, kita langsung masuk saja ke scriptnya. Pertama, buat dulu databasenya dengan nama logreg. Kemudian buat tabel seperti dibawah ini :
CREATE TABLE `anggota` (
`nama` VARCHAR( 50 ) NOT NULL ,
`email` VARCHAR( 25 ) NOT NULL ,
`userid` VARCHAR( 25 ) NOT NULL ,
`password` VARCHAR( 25 ) NOT NULL ,
PRIMARY KEY ( `userid` )
);
Setelah itu kita buat file untuk koneksi ke database. Ketik script dibawah ini lalu simpan dengan nama connect.php.
<?php
$host = "localhost";
$user = "root";
$pass = "";
$db = "relogin";
$konek = mysql_connect($host, $user, $pass) or die ('Koneksi Gagal!');
mysql_select_db($db);
?>
Variabel host,user,pass dan db disesuaikan dengan punya kamu. Host itu adalah nama hostnya, trus user,pass dan db masing-masing adalah username,password dan nama database mysql kamu.
Ok, kalo udah buat juga file-file berikut ini
index.php
<?php
session_start();
if(!isset($_SESSION['userid'])) {
header('location:login.php'); }
else { $usr = $_SESSION['userid']; }
require_once("connect.php");

$query = mysql_query("SELECT * FROM anggota WHERE userid = '$usr'");
$hasil = mysql_fetch_array($query);
?>

<html>
<head>
<title>Halaman Utama</title>
</head>
<body>
<center>
<?php
echo "<h2>Selamat Datang, $usr</h2>";
echo "Nama Lengkap : " . $hasil['nama'] . "<br />";
echo "Email : " . $hasil['email'] . "<p>";
?>
<a href="logout.php"><b>Logout</b></a>
</center>
</body>
</html>
login.php
<?php
session_start();
if(isset($_SESSION['userid'])) {
header('location:index.php'); }
require_once("connect.php");
?>

<html>
<head>
<title>Login &amp; Register &raquo; didinsino.co.cc</title>
</head>
<body>
<table border="0" align="center" cellpadding="7" cellspacing="1" bgcolor="#333333" style="margin-top:50px;">
<form action="proseslogin.php" method="post">
<tr bgcolor="#CCCCCC">
<td colspan="2" align="center"><b>Member Login</b></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>User ID </td>
<td><input name="userid" type="text"/></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Password</td>
<td><input name="password" type="password"/></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" align="center"><input type="submit" name="Submit" value="Login" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" align="center"><font color="#0000FF">Belum Jadi Anggota? <a href="register.php">Daftar</a></font></td>
</tr>
</form>
</table>
</body>
</html>
proseslogin.php
<?php
session_start();
require_once("connect.php");
$user = $_POST['userid'];
$pass = $_POST['password'];
$cekuser = mysql_query("SELECT * FROM anggota WHERE userid = '$user'");
$jumlah = mysql_num_rows($cekuser);
$hasil = mysql_fetch_array($cekuser);
if($jumlah == 0) {
echo "User ID Belum Terdaftar!<br/>";
echo "<a href=\"login.php\">&laquo; Back</a>";
} else {
if($pass <> $hasil['password']) {
echo "Password Salah!<br/>";
echo "<a href=\"login.php\">&laquo; Back</a>";
} else {
$_SESSION['userid'] = "$user";
header('location:index.php');
}
}
?>
register.php
<?php
session_start();
if(isset($_SESSION['userid'])) {
header('location:index.php'); }
?>

<html>
<head>
<title>Login &amp; Register &raquo; didinsino.co.cc</title>
</head>

<body>
<table border="0" align="center" cellpadding="10" cellspacing="1" bgcolor="#333333" style="margin-top:30px;">
<form action="prosesregister.php" method="post">
<tr bgcolor="#CCCCCC">
<td colspan="2" align="center"><strong>Pendaftaran Anggota </strong></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Nama Lengkap </td>
<td><input name="nama" type="text" size="40" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Email</td>
<td><input name="email" type="text" size="40" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>User ID </td>
<td><input type="text" name="userid" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Password</td>
<td><input type="password" name="password" /></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" align="center"><input name="Submit" type="submit" value="Daftar"/></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="2" align="center"><font color="#0000FF">Sudah Jadi Anggota? <a href="login.php">Login</a></font></td>
</tr>
</form>
</table>
</body>
</html>
prosesregister.php
<?php
require_once("connect.php");
$nama = $_POST['nama'];
$mail = $_POST['email'];
$user = $_POST['userid'];
$pass = $_POST['password'];
$cekuser = mysql_query("SELECT * FROM anggota WHERE userid = '$user'");
if(mysql_num_rows($cekuser) <> 0) {
echo "User ID Sudah Terdaftar!<br/>";
echo "<a href=\"register.php\">&laquo; Back</a>";
} else {
if(!$nama || !$mail || !$user || !$pass) {
echo "Masih ada data yang kosong!<br/>";
echo "<a href=\"register.php\">&laquo; Back</a>";
} else {
$simpan = mysql_query("INSERT INTO anggota VALUES('$nama','$mail','$user','$pass')");
if($simpan) {
echo "Pendaftaran Berhasil, Silahkan <a href=\"login.php\">Login</a>";
} else {
echo "Proses Gagal!";
}
}
}
?>
logout.php
<?php
session_start();
unset($_SESSION['userid']);
?>
<center>
<h2>Anda telah berhasil logout..</h2>
Silahkan klik <a href="login.php"><b>disini</b></a> untuk login kembali
</center>
Penjelasan script :
Pada halaman index.php fungsi dari script :
if(!isset($_SESSION['userid'])) {
header('location:login.php'); }
yakni jika user belum login maka ketika mengakses halaman ini user akan dialihkan ke halaman login.php, sedangkan pada halaman login dan register terdapat script :
if(isset($_SESSION['userid'])) {
header('location:index.php'); }
berfungsi mengalihkan user yang telah login ke halaman index.php ketika mengakses halaman ini.
Download source code-nya disini