Login dan Logout Menggunakan PHP dan Mysql - Mari Belajar Coding

28 Desember 2016

Login dan Logout Menggunakan PHP dan Mysql


Login dan Logout Menggunakan PHP dan Mysql

Pada Tutorial kali ini saya akan menjelaskan cara membuat form login menggunakan PHP dan Mysql. Login sendiri berguna untuk membatasi atau memberikan hak akses kepada pengguna, selain pengguna yang terdaftar maka tidak bisa masuk kesistem. 

Proses login yang akan kita buat pada dasarnya hanya memainkan fungsi session PHP dan select Mysql. Jika data yang diperoleh dari form sama dengan data yang ada di database maka session aktif dan redirect kehalaman home. Saat pengguna melakukan logout, session yang aktif akan di hapus kemudian redirect ke halaman login kembali.

1. Langkah Pertama aktifkan service apache dan mysqlnya, kemudian buatlah database login dan tabel login dengan struktur seperti dibawah ini.
Login dan Logout Menggunakan PHP dan Mysql

2. Buatlah forlder baru di htdocs dengan nama login

3. Buka aplikasi editor yang biasa kalian gunakan, buatlah file baru dan copykan syntax dibawah ini kemudian simpan dengan nama index.php, file index.php sendiri untuk form login sebelum masuk ke sistem

<!DOCTYPE html>
<html>
<head>
 <title>Contoh Login</title>
</head>
<body>
<h1>Login</h1>
<form method="post" action="login.php">
 <table>
  <tr>
   <td>Username</td>
   <td><input type="text" name="username" id="username" size="30"></td>
  </tr>
  <tr>
   <td>Password</td>
   <td><input type="password" name="password" id="password" size="30"></td>
  </tr>
  <tr>
   <td></td>
   <td><input type="submit" name="login" id="login" value="Login"></td>
  </tr>
 </table>
</form>
<?php
if (isset($_GET['error']))
 {
    $error=$_GET['error'];

 }else
 {
    $error="";
 }

 $pesan="";      
 
 if ($error=="login")
 {
    $pesan="Username dan Password yang anda masukan salah";
 }
 if ($error=="invalid")
 {
    $pesan="Anda harus login";
 }
 echo $pesan;
?>
</body>
</html>

4. Buat file baru dan copykan syntax dibawah ini, kemudian simpan dengan nama login.php. Login.php digunakan untuk proses login
<?php
//koneksi database
$host="localhost";
$user="root";
$pass="";
$database="login";
mysql_connect($host,$user,$pass);
mysql_select_db($database);

$username=$_POST["username"];
$password=$_POST["password"];

$query=mysql_query("SELECT*FROM login WHERE username='".$username."' AND password='".$password."'");
$result=mysql_fetch_assoc($query);
$jumlah_result=mysql_num_rows($query);
if ($jumlah_result==0) {
 # code...
 header("Location:index.php?error=login");

}elseif ($result["username"]==$username && $result["password"]==$password) {
 # code...
 //proses menyimpan session login
 session_start();
 $_SESSION["username"]=$result["username"];
 $_SESSION["login"]= $result["username"].date('Y-m-d H:i:s');
 header("Location:home.php");
}
?>

5. Buat file baru lagi dengan nama home.php, setelah proses login berhasil maka akan redirect ke halaman home.php
<!DOCTYPE html>
<html>
<head>
 <title>Contoh Login</title>
 <?php
  session_start();
  if (empty($_SESSION["login"])) {
   # code...
   header("Location:index.php?error=invalid");
  }
 ?>
</head>
<body>
<h1>Selamat datang, <?php echo $_SESSION["username"]; ?></h1>
<h3>Anda berhasil Login</h3>
<a href="logout.php">Logout</a>
</body>
</html>

6. Terakhir Buatlah file logout.php
<?php
session_start();
unset($_SESSION['username']);
unset($_SESSION['login']);
session_destroy();
header("Location:index.php");
?>

Related Posts

Load comments