Script login form PHP merupakan salah satu scritp yang hampir pasti kita buat dalam membuat sebuah website database aplication. Fungsi login form PHP ini adalah memberikan hak akses atas sebuah website database aplikasi. Biasanya database aplikasi berbasis website ini memiliki admin panel. Bisa disebut juga admin center, admin area, admin page yang fungsinya merupakan kontrol bagi seorang admin atas website database yang dibuatnya. Untuk pembuatan login form PHP akan saya bahas lebih lengkap sebagai berikut :
Langkah membuat Login Form PHP Sebagai berikut :
Buat tabel di MySQL Dengan script sebagai berikut :
CREATE DATABASE 'belajar' ;
CREATE TABLE 'tb_user' ( <div>'username' VARCHAR( 30 ) NOT NULL , 'password' VARCHAR( 30 ) NOT NULL , PRIMARY KEY ( 'username' )</div> ) ENGINE = MYISAM ;
Fungsinya untuk membuat database belajar dan tabel user dengan nama tb_user.
Untuk design formnya sebagai berikut :
Pertama buat form php dengan nama file : form_login.php
<html>
<head>
<title>Form Login User System</title>
<style type="text/css">
<!--
table {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
}
input,select,textarea {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
background-color:#CCCCCC;
color:#000000;
border:'border-width' 'border-style' 'color';
padding:2;
}
.style1 {color: #0000FF}
-->
</style>
</head>
<body background="gambar/bg_login.png">
<h3 align="center"> LOGIN USER SYSTEM </h3>
<div align="center">
<form id="login" method="post" name="login" action="periksa.php">
<table width="286" border="0" cellpadding="2" cellspacing="2">
<!--DWLayoutTable-->
<tr bgcolor="#FF0000">
<td height="19" colspan="2" align="center" valign="middle">
<strong><font color="#FFFFFF"><blink>LOGIN DI SINI</blink></font></strong></td>
</tr>
<tr>
<td width="106" height="17"> </td>
<td width="180"> </td>
</tr>
<tr>
<td height="18" align="right" valign="middle"><div align="left">Username</div></td>
<td valign="middle">
<input name="username" type="text" id="username" size="20"></td>
</tr>
<tr>
<td height="18" align="right" valign="middle"><div align="left">Password</div></td>
<td valign="middle"><input name="password" type="password" id="password" size="20" /></td>
</tr>
<tr>
<td height="18" valign="top"><!--DWLayoutEmptyCell--> </td>
<td valign="middle">
<input name="login" type="submit" id="login" value=" Login ">
<input type="reset" name="Reset" value="Batal / Clear" /></td>
</tr>
<tr bgcolor="#FF0000">
<td height="18" colspan="2" valign="top"><!--DWLayoutEmptyCell--> </td>
</tr>
</table>
</form>
</div>
</body>
</html>
Hasil tampilan nya seperti berikut :
Langkah kedua adalah membuat file periksa.php.Fungsi file dengan nama periksa.php ini adalah mengecek apakah username dan password yang ada di database server (baik localhost maupun online). Jika username dan password ada maka akan diterima sesion login nya. Biasanya kalau saya membuat database aplikasi berbasis websit setelah login berhasil maka akan saya redirect ke halaman admin.Silahkan dimodifikasi sesuai kebutuhan.
Berikut script periksa.php :
<?php
session_start();
#**************** koneksi ke mysql *****************#
$host = "hostname";
$user = "db_user";
$pass = "db_password";
$dbname ="db_name";
$conn = mysql_connect($host,$user,$pass);
if($conn) {
//select database
$sele = mysql_select_db($dbname);
if(!$sele) {
echo mysql_error();
}
}
#***************** akhir koneksi ******************#
#jika ditekan tombol login
if(isset($_POST['login'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$sql = mysql_query("SELECT * FROM tb_user WHERE username='$username' &&
password='$password'");
$num = mysql_num_rows($sql);
if($num==1) {
// login benar //
$_SESSION['user'] = $username;
$_SESSION['passwd'] = $password;
?><script language="JavaScript">alert('Selamat, Login Anda Sukses!!');
document.location='file/admin.php'</script><?
} else {
// jika login salah //
echo "<script>
eval(\"parent.location='index.php '\");
alert (' Maaf Login Gagal, Silahkan Isi Username dan Password Anda Dengan Benar');
</script>";
//include("login.php");
}
}
?>
Script periksa.php diatas silahkan diganti hostname : nama host yang anda gunakan (biasanya saya menggunakan localhost), username dan password saya menggunakan root.
Penempatan file form_login.php dan periksa.php saya tempatkan sebagai berikut :
Selamat mencoba.









Artikelnya keren sekali…
semoga tambah jaya aja yeach codingnya..
ak sudah tua, jadi banyak yang lupa..
hihihi
oia, btw, untuk link Blogku yang benar adalah :
http://mapays.wordpress.com
bukan http://maypays.wordpress.com
ini hasil karyaku tahun lalu:
http://sman3cilacap.com
(Mozilla is Must)
oke.. segera di update om..
thankz yaa
cara mo bikin tabel, dan datanya dari phpmyadmin gimana ?
itu kan udah ada script untuk membuat tabel pak heru.
CREATE DATABASE `belajar` ;
CREATE TABLE `tb_user` (
`username` VARCHAR( 30 ) NOT NULL ,
`password` VARCHAR( 30 ) NOT NULL ,
PRIMARY KEY ( `username` )
) ENGINE = MYISAM ;
data nya diisikan secara manual dulu, misal
username : admin
password : admin
Enter your comments here…
mas setelah saya buat seperti yang anda jelaskan diatas mengapa setelah saya login keluar informasi kaya gini (Parse error: syntax error, unexpected T_STRING in C:\Program Files\xampp\htdocs\skripsi\periksa.php on line 21) saya pemula jangan disesatkan yah masalah script php??saya pengen banget bisa php.
berarti di line 21 ada yang salah sintax.. ada contoh sintaxnya ndak ?
saya masih kurang ngerti…
dimana penempatan session_periksa.php dan penempatan hapus_session.php
kalau session_periksa.php digunakan untuk memeriksa keabsahan user name dan password dalam database
sedangkan hapus_session.php untuk menghapus data session setelah kita login..
terimakasih mohon dijawab….?????
paling dari setiap halaman pak
Mas..klo buat Login dan Logout gmn…
login ada di tulisan saya.. script login mysql
untuk script logoutnya :
pak, saya coba menu login nya , web servernya saya pake wamp. kq error ya.
coba pake appserv pak.. error warningnya apa
pak saya maw tanyak…1!!!!
saya gunakan foxserv(jalur localhost)
kan setelah kita login and masukan pasword nya….
kan kan login lari nya ke periksa.php,,,, lalu kalau benar ,,dia ke yang kita tuju,,,
setelah kita logout,,,kan dia balik ke halama semula,,,,..
yang saya maw tanyak… sebelum kita logout kan ada alamat website nya,,,
yang saya deklarasikan ke mozilla lalu saya copy http://localhost/tiki/admin/user/
lau saya logout… kan balik ke semula,,,,1!!
tapi setelah saya paste kan yang saya copy tadi eh malah balik ke tempat yang sudah saya login,,,
jadi kan gak ada guna nya saya login,,toh ternyata bisa di bobol orang…
jadi cara lindungin nya gmana script nya…agar yang di copy saya pastekan balik ke semula atau ke awal,,,jadi terlindung,,,tapi law login baru mau ke yang kita tuju,,
tolong bantuan nya ya pak..
coba cek di
alert('Alhamdulillah, Login Anda Sukses!!');ini adalah file yang mengarahkan halaman setelah login. artinya jika login benar maka akan dilempar ke halaman main.php (bisa dpake nama apa saja.) Jika login gagal, akan masuk ke halaman index.php. Kebetulan saya setting saat buka halaman index.php akan masuk form login. Fungsi daridocument.location='file/main.php'
eval(\"parent.location='index.php '\");artinya jika login gagal maka akan kembali ke form login.Pak Boleh aku ikutan ….?
boleh
ini situs saya pak
http://ftmipa.unindra.info/informatika/admin/medio.php?module=home
nice info pak
mantap//…
silahkan mampir kesini…
http://www.wix.com/flavourband/pop
oke
baris ke 32-40 periksa.php eror… salahnya bagian mana?
coba cek dl pak apakah hostname udah benar, username, dan password adalah hostname mysql (biasanya localhost) username (biasanya root) password biasanya (root)
Pak, saya mau nanya nih, setelah copy & paste script bapak yang d atas saya berhasil untuk membuat form dan sukses connect ke next page (sebut saja index.php), tetapi ketika saya tidak menginputkan username & password, cukup menekan tombol “LOGIN” tetap aja bisa connect ke halaman berikutnya. knp yah pak?
coba dicermati dl scriptnya,karena logika login saya set jika password dan username tidak benar dia tidak akan mau login.
mas, klo di localhost bisa berjalan lancar tapi pas di upload kita login tapi gk masuk ke halaman setelah login itu knapa mas???
tapi klo register datanya masuk ke database
makasih sebelumnya
coba cek tipe datanya di tabel nya
pak saya masih newbe bgt dlm hal ini,saya mo nanya guna script ini apa y
“$num = mysql_num_rows($sql);
if($num==1) {
saya mo nanya, gimana caranya menginput data dengan array, tetapi apabila data yang di input sudah ada yang sama(kembar) data tidak tsb dapat terinput.. thanks before
wah keren sekali
kalau begini PR bakal mudah diselesaikan
pak eror q ini
===============================
Warning: mysql_connect() [function.mysql-connect]: php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\AppServ\www\tesaku\periksa.php on line 8
Warning: mysql_connect() [function.mysql-connect]: [2002] php_network_getaddresses: getaddrinfo failed: No such host is kn (trying to connect via tcp://hostname:3306) in C:\AppServ\www\tesaku\periksa.php on line 8
Warning: mysql_connect() [function.mysql-connect]: php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\AppServ\www\tesaku\periksa.php on line 8
Warning: mysql_query() [function.mysql-query]: [2002] A connection attempt failed because the connected party did not (trying to connect via tcp://localhost:3306) in C:\AppServ\www\tesaku\periksa.php on line 22
Warning: mysql_query() [function.mysql-query]: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. in C:\AppServ\www\tesaku\periksa.php on line 22
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\AppServ\www\tesaku\periksa.php on line 22
Fatal error: Maximum execution time of 60 seconds exceeded in C:\AppServ\www\tesaku\periksa.php on line 22
===============================
apa yang salah apa cara menginstal appserv nya
recomended appserv berapa???
kalau punya bapak appserv berapa
pa ? bs tanya, kira2 kalw setelah logout trus mau login lagi tu mcul pesan harus login gmn scriptnya ya ???
kang , file/admin.php nya ada di sebelah mana ya ??
pak ada contoh untuk librari/inc.session ga?
lalu bagaimana script untuk mainnya pak?
pak tolong buatkan login adminnya dong..
dari login.php,periksa.php,koneksi.php,session.php,index.php,dan menu.php.
tolong bantu ya pak???terimakasih sebelumnya.