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 = "logreg"; $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 & Register » 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\">« Back</a>"; } else { if($pass <> $hasil['password']) { echo "Password Salah!<br/>"; echo "<a href=\"login.php\">« 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 & Register » 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\">« Back</a>"; } else { if(!$nama || !$mail || !$user || !$pass) { echo "Masih ada data yang kosong!<br/>"; echo "<a href=\"register.php\">« 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

Gan saya mau tanya, lha itu nempatin scriptnya di mana? apa saya buat halaman masing2 buat tiap script atau di uplod ke ftp. Kalo atabasenya saya dah buat.
Tolong gan saya kagak bisa2 nih…
sukses ya gan…
May 13th, 2010, 08:12
Di kopi aja scriptnya di notepad trus simpan sesuai dengan nama diatasnya. Lalu uplod filenya ke webhosting atau kalo pake localhost di kopi ke folder htdocs. Untuk lebih mudahnya silahkan donlod aja contoh script yang sudah jadi. Thank’s
May 15th, 2010, 18:15
oh gitu gan….
dari dulu aja bilang…..
thenks gan….
May 18th, 2010, 10:34
gan gini gan,…
untuk kesekian kalinya ane nanya sama juragan tersayang….
lha itu tetep kagak bisa…
saya dah download source-nya juga trus diupload ke htdocs tetep kagak bisa….
maksud saya, gak muncul gitu di template web atau dihalman web…
oh iya gan saya pake cms…
May 19th, 2010, 06:54
mungkin pengaturan di file “config.php” belum dirubah. Untuk variabel host,user,pass,dan db disesuaikan dengan punya kamu. Sebaiknya register global di set “on” supaya bisa tau dimana salahya.
May 19th, 2010, 09:10
oke…
thanks for infonya…
mo di coba dulu….
October 12th, 2010, 16:29
bos yang proses register yang if(mysql_num_rows($cekuser) 0) {
kok error gimanan nih
October 25th, 2010, 00:37
Pesan errornya gmna? mungkin ada kesalahan pada querinya…
October 25th, 2010, 15:18
thx script register,login n logout boss(mantap)…udah nambah daftar bahan bljar php buat sy…
mohon bantuannya boss script bila user lupa password login…sblmnya terima kasih byk atas bantuannya.
October 27th, 2010, 06:00
iya sama2. ok nanti sy cb posting untuk script lupa passwrdnya..
October 27th, 2010, 14:41
saya sudah coba script ini,dan hasilnya bagus,
trimakasih telah berbagi
November 4th, 2010, 18:17
Script untuk lupa passwordnyabagaimana, gan ?
November 6th, 2010, 06:59
Iya nanti saya posting. saya msh fokus ke TA saya dulu. sabar ya…
November 6th, 2010, 10:02
sukses bos scriptnya….tinggal update di dreamweaver aja neh bos……biar cantik tampilannya
November 10th, 2010, 02:13
keren MASTER ,,,,
tapi saya mau tanya , registernya cuma bisa sekali ya ? kok saya mau register lagi , tampilannya ( user id telah terdaftar )
kenapa ya master????
harap bales ya ! :’(
November 18th, 2010, 09:42
Yudha: iya memang gitu ketentuannya, user id yang sudah terdaftar tidak bisa dipakai lagi. user id ini yg membedakan user 1 dengan yg lainnya. kan rata2 semua situs yg ada registernya kayak gitu, user id tidak blh sama. Ok..
thx sblumnya
November 19th, 2010, 10:50
tapi saya ingin coba daftarnya lagi memakai username & password lain kok gak bisa yya? apa masalahnya ? tolong di beri penjelasan MASTER!
November 22nd, 2010, 05:14
Mau tanyak..kalau buat register sebagai admin?
December 2nd, 2010, 05:54
scriptnya oke….

saya mau nanya…
klo ketika login lagi pada hari yang sama tidak bisa…dengan kata lain login dibatasi hanya sekali pada hari itu…
mnta tlong logikanya bgmn???
klo bleh sekalian ma scriptny….
terima kasih banyak…
December 27th, 2010, 06:59
yogi: untuk mslh itu, coba dibuat satu tabel yg memuat id user dan tggl loginnya. nah pas user mau login lagi,tggal dicek di tbl itu apkh ada user dgn id trsbt dan tggl lognnya sm dgn tgl skrg. kalo sdh ada,tampilkan pringanatn,klo blum tmbahkan id dan tgl skrng kdalam tbl trsbt dan user bisa login. krg lebih sperti itulah..
December 27th, 2010, 11:55
trimakisah gan..
)
eh trimakasih… mantap gan.
bagi yg error cb di cek lg smuanya.. mulai dari database nya,, aku pertama jg error tp setelah aku samain smua ama yg yg ditulis langsung OK..
klo ada script yg lain dishare lg gan…
December 31st, 2010, 10:03
gan kok yang download an nya gg bisa di donlot yak,padahal ane kepengen bgt punya script nya dri data ane.
June 22nd, 2011, 04:25
mas.. mau nanya dong,, sya pemula bgt ni,,
kalo saya udah ngebuat desain web.nya di dreamweaver, di save .html, trus gmna ya selanjutnya?
mkasiih..
June 30th, 2011, 09:42
alhamdulillah… trimakasih bantuannya…
setelah beberapa kali tny sama temen gada yg ngasih tau, akhirnya disini aku menemukan caranyanya…
July 7th, 2011, 08:58
gan mu nanya ..
kalo saya login udah berhasil masuk, truss click kembali atw (go back) ke page login lagi nahh pas di page login qita mu next lagi tuhh atw (go forward) yg udah qita bisa berhasil masuk login, nahh yg di tanyain bisa ga yg qita udah di back itu pas di forward lagi harus login lagi yg back itu qita anggap udah logout ?? ..
August 7th, 2011, 12:55
Mas, klo mau menambahkan md5 agar passwordnya terenkripsi. bagaimana caranya yah? thx
October 5th, 2011, 08:58
Matur suwun banget kang…
October 9th, 2011, 07:11
tania: pada proseslogin.php dan prosesregister.php $pass = $_POST['password'] diganti dengan $pass = md5($_POST['password']). trus karna enkripsi md5 ini menghasilkan karakter yg brjumlah 32, maka pada databesnya field password lebarnya tdk boleh kurng dari 32. smoga membantu
roni: sama2 kang
October 9th, 2011, 17:12
gan Ane minta tolong di jelasin tentang PhpMyAdmin dong gan ane nyari bgamana bisa web itu terbuat dengan rapi klo ane kan buat denga dreamweaver gan truz gan klo masuk profilnya USER bisa ada foto user tersebut gan?? mohon penjelasannya ya gan..!!
October 27th, 2011, 15:07
sama satu lagi gan ane klo mau upload PHP file ke domain itu bgamana gan..!!
October 27th, 2011, 15:08
reza: untuk upload filenya harus punya hosting dulu,trus nnti kita disediain space untuk mnguplod file tsb. untuk latihan bisa coba di hosting gratisan, misalnya 000space.com. phpmyadmin itu apaliksi dari php yg gunanya untuk admnistrasi database mysql. kalo untuk maslh kerapian website itu trgantung masing2 bgmna menentukan komposisinya. thx
November 7th, 2011, 16:27
gan mau tanya, kok pas register gagal mulu ya? apa yg salah tuh?
November 10th, 2011, 15:17
fajar: pesan erornya gimana mas? coba periksa koneksi databasenya mungkin
November 11th, 2011, 17:40
wuih…alhamdulilah gak stres lagi…dapet project cuman kurang proses loginnya…kode dari dosen juga error mulu…tapi untungnya iseng2 cari eh malah dapet…gomawo!
November 27th, 2011, 14:40
permisi ikut belajar mas,…..
q ambil ya,…………
December 12th, 2011, 19:51
trim boz, coba dulu…
January 18th, 2012, 09:36