Home
»
Programmer
»
Cara Membuat Login Dengan Status Dalam PHP
Cara Membuat Login Dengan Status Dalam PHP
MEMBUAT LOGIN USER
|
Halaman web adalah suatu halaman rumah di dalam dunia maya, di
sini kita
|
dapat menampilkan tentang segala inspirasi, imajinasi, mimpi
maupun uneg-uneg
|
sekalipun. Ibarat sebuah rumah yang mempunyai pintu dan kunci,
suatu halaman web
|
juga dapat di amankan dengan menggunakan beberapa cara :
|
1.
|
Menerapkan Login & Password dengan system .htaccess
|
2.
|
Menerapkan Login & Password dengan menggunakan session PHP
dan MySQL
|
3.
|
dll.
|
Untuk bagian pertama sangat sederhana, karena ini memanfaatkan
kelebihan yang di
|
miliki oleh apache. Dalam modul ini akan menjelaskan pengamanan
halaman web
|
menggunakan session pada PHP dan MySQL. Ada beberapa hal yang
harus kita
|
perhatikan dalam membuat halaman login dengan menggunakan
session pada PHP
|
dan MySQL, beberapa hal tersebut antara lain :
|
1.
|
Pastikan form login adalah form dari server kita.
|
2.
|
Amankan input text untuk user dan password, metoda, dan format
data.
|
3.
|
Hindari penggunaan register global (untuk PHP v 4.2.0 keatas sdh
di-disable secara
|
default).
|
4.
|
Expired time dari login yang dilakukan.
|
5.
|
Pastikan file yang tidak boleh diakses tidak dapat dipanggil
secara langsung.
|
Langkah-langkahnya adalah sebagai berikut:
|
Jika anda mencoba dari komputer stand-alone, jalankan dulu
webserver dan database
|
server anda.
|
1.
|
Database
|
Setiap user yang login akan dicek username dan passwordnya dari
tabel user yang
|
terdapat pada database, dalam percobaan kali ini kita membuat
database dengan
|
nama login.
|
Latihan 1 :
|
create database login;
|
create table
users
|
(
|
username varchar(20) not null,
|
password varchar(35) not null,
|
level
varchar(1) not null,
|
primary key(username)
|
);
|
2.
|
Setelah itu isilah data pada tabel users tersebut dengan
username, password dan
|
level untuk menentukan hak akses. Sekarang Anda sudah memiliki
sebuah database
|
login. Kemudian buatlah halaman koneksi database yang dapat
dipanggil. Simpan
|
dengan nama koneksimysql.php
|
Latihan 2 :
|
<?php
|
$koneksi_oke=mysql_connect("localhost","root","");
|
?>
|
3.
|
Setelah membuat database dan koneksi seperti langkah diatas,
maka selanjutnya
|
kita akan mebuat tampilan halaman login dengan script HTML
dibawah dengan
|
menggunkan metode post. Buat file login.php yang isinya sebagai
berikut :
|
Latihan 3 :
|
<html>
|
<?php
|
include ("koneksimysql.php")
|
?>
|
<head>
|
<title>Login </title>
|
<style type="text/css">
|
<!--
|
.style4 {color: #333333; }
|
.style11
{color: #FFFFFF}
|
--
|
>
|
</style></head>
|
<body>
|
<form method=post action=proses.php>
|
<table width="350" height="102"
border="0">
|
<tr><td width="100"><div
align="center" class="style4">
|
<div align="left">
|
<pre>Nama
|
: </pre>
|
</div></div></td>
|
<td width="200"><input name="username"
type="text" value=""
|
size="30"></td>
|
</tr>
|
<tr><td><div align="left">
|
<pre
class="style4">Password : </pre>
|
</div></td>
|
<td><input name=pas type="password" size=
30></td>
|
</tr>
|
<tr>
|
<td height="21" colspan="4"><div
align="center">
|
<input name="login" type="submit"
class="mainoption" id="login"
|
value="Login">
|
</div></td>
|
</tr>
|
</table>
|
</form>
|
</body>
|
</html>
|
Halaman yang akan terbuat:
|
Nama
|
:
|
Password :
|
Login
|
4.
|
Setelah halaman index terbuat, saat nya kita membuat script PHP
untuk memproses
|
hasil inputan pada halaman login. Sekarang mari kita buat script
PHP dengan nama
|
proses.php.
|
Latihan 4 :
|
<?php
|
include ("koneksimysql.php");
|
mysql_select_db("login");
|
$perintah="select
* from users where username='$username' and
|
password='$password' ";
|
$isi_data=mysql_query($perintah);
|
$row=mysql_fetch_array($isi_data);
|
if ($row[username]==$username AND $row[password]=$password)
|
{
|
session_start();
|
session_register("namauser");
|
session_register("passuser");
|
$namauser=$row[username];
|
$passuser=$row[password];
|
if ($row[level]=='1') // ini untuk admin
|
{header("location:tabelmaster.php");}
|
else // kalau ini untuk user biasa
|
{{header("location:user.php");}
|
}
|
}
|
else
|
{
|
print"
|
<script>
|
alert (\"anda salah login \");
|
history.back(-1);
|
</script>";
|
}
|
?>
|
Pertama yang dilakukan oleh proses diatas adalah melakukan
koneksi dengan MySQL,
|
jika koneksi dengan MySQL sudah berhasil maka proses select ke
table users untuk
|
username dan password yang di isikan pada halaman login.php.
Kemudian
|
session_start() dimaksudkan untuk menginisialisasi suatu data
session. Dia akan
|
membuat sebuah session baru atau melanjutkan session yang sudah
ada berdasarkan
|
pada session yang sedang terjadi akibat dari pertukaran data
session lewat request
|
GET, POST atau cookie.
|
5.
|
Jika username dan password dapat ditemukan lalu script akan
mengarahkan user ke
|
halaman tabelmaster.php (halaman ini diperuntukan untuk yang
memiliki hak akses
|
level 1), atau akan mengarahkan user ke halaman user.php
(diperuntukan untuk
|
user biasa) dan sebaliknya jika username atau password salah
maka user akan
|
diarahkan kembali ke halaman proses.php.
|
Sekarang kita perlu membuat script atau dokumen yaitu
tabelmaster.php dan
|
user.php. File tabelmaster.php dan user.php adalah suatu halaman
web yang
|
merupakan halaman yang boleh diakses atau dimasuki user yang
sudah berhasil
|
login dengan benar. File tabelmaster.php dan user.php nantinya
tidak akan bisa
|
diakses langsung dari browser sebelum suatu user melakukan login
dengan benar.
|
Pada halaman tabelmaster.php dan user.php juga akan berisi link
untuk logout
|
sehingga session dari user tersebut bisa hilang dan kemudian
kembali ke halaman
|
proses.php. Berikut ini adalah script dari file tabelmaster.php
dan user.php.
|
Latihan 5 :
|
tabelmaster.php
|
<?php
|
include ("koneksimysql.php");
|
mysql_select_db("login");
|
$perintah="SELECT * FROM users";
|
$hasil=mysql_query($perintah);
|
session_start();
|
if (!empty ($namauser) AND !empty ($passuser))
|
{
|
echo("<H3>Selamat Datang Admin</H3>"
.$namauser);
|
echo("<br>");
|
echo("<br><a
href=logout.php>Logout</a>");
|
} else {
|
echo("Maaf, Untuk mengakses halaman ini ");
|
echo("anda harus login terlebih
dahulu<BR><BR><HR>");
|
echo("<A HREF='login.php'>Login</A>");
|
}
|
?>
|
</body>
|
</html>
|
user.php
|
<?php
|
include ("koneksimysql.php");
|
mysql_select_db("login");
|
$perintah="SELECT * FROM users";
|
$hasil=mysql_query($perintah);
|
session_start();
|
if (!empty ($namauser) AND !empty ($passuser))
|
{
|
echo("<H3>Selamat Datang User</H3>"
.$namauser);
|
echo("<br>");
|
echo("<br><a
href=logout.php>Logout</a>");
|
} else {
|
echo("Maaf, Untuk mengakses halaman ini ");
|
echo("anda harus login terlebih
dahulu<BR><BR><HR>");
|
echo("<A HREF='login.php'>Login</A>");
|
}
|
?>
|
</body>
|
</html>
|
Sekian,Semoga artikel saya berhasil dan mudah di pahami :)
Semoga artikel Cara Membuat Login Dengan Status Dalam PHP bermanfaat bagi Anda.Amin...
Posting Komentar
Stop Spam,kesopanan juga berlaku di internet bro... berlaku juga di kotak komentar ini.Dukungan dan kritikan untuk kemajuan sangat di perlukan.
Thanks visit IXE-11.Inc....
Bramastana D