PHP dan MySql sederhana login dengan session

Berikut ini adalah contoh script program php paling sedehana tentang login dan logout yang menggunakan database dan session. Di buat sederhana mungkin agar lebih mudah di pelajari. Disini belum di sisipi fitur pengecekan input dari user, sehingga masih rentan terhadap serangan SQL injection.

1. Pertama kita buat "index.php".

<html>
<head>
<title>Homepage</title>
</head>

<body>
<p>
  <a href="index.php">Home</a> |
  <a href="login.php">Login</a> |
  <a href="member.php">Member</a> |
  <a href="logout.php">Logout</a> 
</p>
<p>Selamat datang. Di sini semua orang bisa mengakses.</p>
</body>
</html>

2. login.php

<?php
  session_start();

  $username = "";
  $password = "";
  if (isset($_POST['username']) && isset($_POST['password'])) {
    $un = $_POST['username'];
$pw = md5 ($_POST['password']);
$cn = @mysql_connect("localhost", "root", "") or die("Gagal konek ke MySql.");
mysql_select_db("db_user") or die("Gagal memilih database.");
$query = "select * form tb_user where
 login_username = '$un' and login_password = '$pw'";
$hasil = mysql_query($query) or die ("Gagal melakukan query.");
if ($hasil != false) {
  if (mysql_num_rows ($hasil) == 1) {
    $username = $_POST ['username'];
$password = $_POST ['password'];
$_SESSION ['username'] = $_POST['username'];
$_SESSION ['password'] = $_POST['password'];
};
 };
};
  ?>
  <html>
  <head>
  <title>Login</title>
  </head>
  
  <body>
  <p>
    <a href ="index.php">Home</a> |
    <a href ="login.php">Login</a> |
    <a href ="member.php">Member</a> |
    <a href ="logout.php">Logout</a> |
  </p>
  <?php
    if (empty($username)) {
 if (isset($_POST['username']) || isset($_POST['password'])) {
   echo "<p>Username dan password yang anda ketik adalha salah!</p>";
 };
  ?>
  <form name="login_form" method="post" action="login.php">
    Username: <input name="username" size="32" maxlength="32"><br />
Password: <input name="password" type="password" size="32" maxlength="32"><br />
<input type="submit" name="button" value="submit">
</form>
<?php
 }
 else {
?>
<p>Anda telah berhasil melakukan login. </p>
<?php
  };
?>
</p>
</body>
</html>

3. Ketiga kita beri nama member.php.

<?php
  session_start();
  
  $username = "";
  $password = "";
  if (isset ($_SESSION['username']) && isset($_SESSION['password'])) {
    $un = $_SESSION['username'];
$pw =  md5($_SESSION['password']);
$cn = @mysql_connect("localhost", "root", "") or die("Gagal konek ke MySql.");
mysql_select_db("db_user") or die("Gagal memilih database.");
$query = "select * from tb_user where
 login_username = '$un' and login_password = '$pw'";
$hasil = mysql_query($query) or die("Gagal melakukan query.");
if ($hasil != false) {
 if (mysql_num_rows($hasil) == 1) {
   $username = $_SESSION['username'];
$password = $_SESSION['password'];
  };
};
   };
 ?>
 <html>
 <head>
 <title>Members Only</title>
 </head>

 <body>
 <a href="index.php">Home</a> |
 <a href="login.php">Login</a> |
 <a href="member.php">Member</a> |
 <a href="logout.php">Logout</a> |
</p>
<?php
  if (empty($username) || empty($passwordd)) {
    echo "<p>Maaf, hanya members yang boleh mengakses halaman ini.</p>";
  }
  else {
 ?>
 <p>
    Selamat datang <b><?php echo $username; ?></b>
 </p>
 <?php
    };
 ?>
 </body>
 </html>

4. Terakhir logout.php.

<?php
  session_start();
  
  unset($_SESSION['username']);
  unset($_SESSION['password']);
?>
<html>
<head>
<title>Logout</title>
</head>

<body>
<p>
  <a href="index.php">Home</a> |
  <a href="login.php">Login</a> |
  <a href="member.php">Member</a> |
  <a href="logout.php">Logout</a> |
</p>
<p>
Oke. . .Anda sudah logout .
</p>
</body>
</html>

Nanti hasilnya seperti di bahwah ini.


Sekian Terima kasih, Semoga bermanfa'at bagi pembacanya ^_^ . Jangan lupa tinggalkan komentar :) .
Previous
Next Post »