Login Sederhana Menggunakan PHP Session
Suatu sistem berbasis web tentu memiliki level akses yang berbeda-beda, dimana biasanya pembatasan level akses itu menggunakan fitur validasi user seperti login. Untuk login sendiri pada dasarnya adalah bagaimana sistem mengenal apakah user tersebut terdaftar ke dalam sistem atau tidak, dan apabila terdaftar maka sistem perlu sebuah variabel untuk menampung data user tersebut selama sesi tertentu agar sistem tetap mengenali bahwa user tersebut telah melakukan login dan dapat mengakses fitur-fitur yang tidak dibuka untuk user yang belum login, biasanya hal ini disebut dengan halaman backend.
pada tutorial kali ini kita membuat sistem login sederhana menggunakan session php yang hanya terdiri dari beberapa file php. file-file tersebut adalah sebagai berikut:
- index.php
- koneksi.php
- login.php
- login-proses.php
- logout.php
dan sebuah basis data dengan nama bebas dengan 1 buah tabel user dengan spesifikasi sebagai berikut:
nama db : db_web
tabel : user
- iduser int(11) pk ai
- username varchar(20)
- password varchar(32)
- nama varchar(20)
baik mari kita kerjakan kode programnya. untuk yang pertama kita buat terlebih dahulu file koneksi.php
koneksi.php
pada file koneksi silahkan sesuaikan dengan konfigurasi database kalian agar dapat berjalan dengan baik. kemudian kita membuat file login.php dimana ini adalah halaman awal jika user belum melakukan login.
login.php
Pada halaman login ini user diminta untuk mengisi username dan password yang telah terdaftar pada database user. kemudian kita membuat file login-proses.php dimana apabila user menekan tombol login maka username dan password yang telah diinputkan tersebut akan diteruskan ke halaman login-proses.php.
login-proses.php
inti dari login sederhana ini ada di file login-proses.php dimana urutan langkah-langkahnya adalah
- sistem akan mengecek ke database apakah username tersebut ada atau tidak
- kemudian sistem akan membandingkan data username dan password yang diketik user tersebut sama atau tidak dengan yang diperoleh dari database. dalam pengecekan ini kita menggunakan md5 untuk mengenkripsi apa yang diketik user sehingga dapat meminimalkan terjadinya script injection.
- apabila hasil pengecekan bernilai TRUE maka sistem akan menciptakan session dari data-data yang ada dan apabila bernilai false sistem akan memberikan pesan kesalahan.
selanjutnya kita membuat halaman output yaitu index.php
index.php
halaman index.php pertama kali akan melakukan pengecekan apakah session login telah tercipta atau belum. kita memberikan value 1 untuk menandakan apakah session login telah tercipta atau belum, jika sudah maka sistem akan menampilkan menu utama seperti beranda dan logout dan juga memberikan pesan selamat datang dengan menyertakan nama dan username user yang telah login tersebut.
tahapan terakhir adalah membuat logout.php untuk keluar dari sistem.
logout.php
Dengan adanya halaman logout ini user dapat keluar dari sistem dan session yang telah tercipta sebelumnya akan dihapus sehingga apabila user ingin masuk ke halaman backend user tersebut diharuskan untuk login kembali.
berikut adalah screenshot hasil program.
halaman login
Output index.php
Demikianlah tutorial singkat untuk membuat login sederhana menggunakan PHP session yang dapat kalian kembangkan dengan lebih baik lagi. Apabila ada pertanyaan dapat mengajukannya di kolom komentar di artikel ini.
Selamat mencoba ya.
Suatu sistem berbasis web tentu memiliki level akses yang berbeda-beda, dimana biasanya pembatasan level akses itu menggunakan fitur validasi user seperti login. Untuk login sendiri pada dasarnya adalah bagaimana sistem mengenal apakah user tersebut terdaftar ke dalam sistem atau tidak, dan apabila terdaftar maka sistem perlu sebuah variabel untuk menampung data user tersebut selama sesi tertentu agar sistem tetap mengenali bahwa user tersebut telah melakukan login dan dapat mengakses fitur-fitur yang tidak dibuka untuk user yang belum login, biasanya hal ini disebut dengan halaman backend.
pada tutorial kali ini kita membuat sistem login sederhana menggunakan session php yang hanya terdiri dari beberapa file php. file-file tersebut adalah sebagai berikut:
- index.php
- koneksi.php
- login.php
- login-proses.php
- logout.php
dan sebuah basis data dengan nama bebas dengan 1 buah tabel user dengan spesifikasi sebagai berikut:
nama db : db_web
tabel : user
- iduser int(11) pk ai
- username varchar(20)
- password varchar(32)
- nama varchar(20)
baik mari kita kerjakan kode programnya. untuk yang pertama kita buat terlebih dahulu file koneksi.php
koneksi.php
<?php $host = "localhost"; $user = "root"; $pass = ""; $db = "db_web"; $koneksi = mysqli_connect($host,$user,$pass,$db); ?>
pada file koneksi silahkan sesuaikan dengan konfigurasi database kalian agar dapat berjalan dengan baik. kemudian kita membuat file login.php dimana ini adalah halaman awal jika user belum melakukan login.
login.php
<!DOCTYPE html> <html> <head> <title>Aplikasi Login Sederhana</title> <style> body { font-family: verdana; font-size: 12px; } a { text-decoration: none; color: blue; } a:hover { color: green; } </style> </head> <body> <h1 align="center">Aplikasi Login Sederhana : PHP Session</h1> <hr> <form action="login-proses.php" method="post"> <table width="300" border="0" align="center"> <tr> <td width="150">Username</td> <td> <input type="text" name="username" required> </td> </tr> <tr> <td width="150">Password</td> <td> <input type="password" name="password" required> </td> </tr> <tr> <td width="150"></td> <td> <input type="submit" value="login" required> </td> </tr> </table> </form> </body> </html>
Pada halaman login ini user diminta untuk mengisi username dan password yang telah terdaftar pada database user. kemudian kita membuat file login-proses.php dimana apabila user menekan tombol login maka username dan password yang telah diinputkan tersebut akan diteruskan ke halaman login-proses.php.
login-proses.php
<?php session_start(); include "koneksi.php"; $username = $_POST['username']; $password = $_POST['password']; //cek data $sql = "SELECT * FROM user WHERE username='$username' "; $qry = mysqli_query($koneksi,$sql); $usr = mysqli_fetch_array($qry); if( md5($username) == md5($usr['username']) AND md5($password) == md5($usr['password']) ) { $_SESSION['iduser'] = $usr['iduser']; $_SESSION['username'] = $usr['username']; $_SESSION['nama'] = $usr['nama']; $_SESSION['login'] = 1; $pesan = "Login berhasil, selamat datan $username"; } else { $pesan = "Login gagal, username atau password anda salah!"; } ?> <script> alert('<?php echo $pesan;?>'); location='index.php'; </script>
inti dari login sederhana ini ada di file login-proses.php dimana urutan langkah-langkahnya adalah
- sistem akan mengecek ke database apakah username tersebut ada atau tidak
- kemudian sistem akan membandingkan data username dan password yang diketik user tersebut sama atau tidak dengan yang diperoleh dari database. dalam pengecekan ini kita menggunakan md5 untuk mengenkripsi apa yang diketik user sehingga dapat meminimalkan terjadinya script injection.
- apabila hasil pengecekan bernilai TRUE maka sistem akan menciptakan session dari data-data yang ada dan apabila bernilai false sistem akan memberikan pesan kesalahan.
selanjutnya kita membuat halaman output yaitu index.php
index.php
<?php session_start(); $login = $_SESSION['login']; if($login == 1) { include "koneksi.php"; ?> <!DOCTYPE html> <html> <head> <title>Aplikasi Login Sederhana</title> <style> body { font-family: verdana; font-size: 12px; } a { text-decoration: none; color: blue; } a:hover { color: green; } </style> </head> <body> <h1 align="center">Aplikasi Login Sederhana : PHP Session</h1> <hr> <a href="index.php">Beranda</a> | <a href="logout.php">Logout</a> | <hr> <?php $nama = $_SESSION['nama']; $username = $_SESSION['username']; echo "Selamat Datang $nama ($username) "; ?> <hr> </body> </html> <?php } else { include "login.php"; } ?>
halaman index.php pertama kali akan melakukan pengecekan apakah session login telah tercipta atau belum. kita memberikan value 1 untuk menandakan apakah session login telah tercipta atau belum, jika sudah maka sistem akan menampilkan menu utama seperti beranda dan logout dan juga memberikan pesan selamat datang dengan menyertakan nama dan username user yang telah login tersebut.
tahapan terakhir adalah membuat logout.php untuk keluar dari sistem.
logout.php
<?php session_start(); session_destroy(); ?> <script> alert('Logout berhasil'); location='index.php'; </script>
Dengan adanya halaman logout ini user dapat keluar dari sistem dan session yang telah tercipta sebelumnya akan dihapus sehingga apabila user ingin masuk ke halaman backend user tersebut diharuskan untuk login kembali.
berikut adalah screenshot hasil program.
halaman login
Output index.php
Demikianlah tutorial singkat untuk membuat login sederhana menggunakan PHP session yang dapat kalian kembangkan dengan lebih baik lagi. Apabila ada pertanyaan dapat mengajukannya di kolom komentar di artikel ini.
Selamat mencoba ya.
Labels:
Aplikasi Web,
login,
PHP,
session
Terima kasih telah membaca Login Sederhana Menggunakan PHP Session. Bila bermanfaat boleh di share yah :)
0 Comment for "Login Sederhana Menggunakan PHP Session"