Cara Membuat Login PHP yang Aman

By , February 10, 2015,

Cara membuat login php yang aman. Login adalah tahap awal sebelum masuk ke sebuah intruksi pada web atau sistem. Penggunaan form login untuk menjaga agar lebih aman keberadaan data sangat penting dilakukan. Hal ini dilakukan agar data-data tidak mudah hilang dan disalah gunakan orang yang tidak bertanggung jawab. Membuat auntentikasi sangat harus pada login sangat perlu dilakukan. Pengambanan banyak sekali cara yang bisa dilakukan dengan php. Salah satu cara misalnya yaitu dengan menggunakan fungsi sebuah algoritma pengamanan. Nah untuk kali ini share yang saya lakukan adalah mebuat form login yang aman dengan php. Gimana caranya simak lebih lanjut.

Cara membuat login php

Cara membuat login php

Cara kerja dari pengamanan form login ini dalah menjaga agar form yang diinputkan tidak bisa di injeksi dengan kode-kode tertentu. Biasanya jika tidak diamankan, form untuk login sangat mudah di tembus dan dibobol dengan cara measukkan kode-kode karakter tentu. Nah kegiatan tersebut yang disebut dengan sql injeksi. Nah jika hal  tersebut bisa terjadi, keberadaan data Anda pada server rentan sekali hilang atau disalahgunakan.

Cara Membuat Login PHP yang Aman

Caranya adalah dengan menerapkan fungsi yang ada pada php, yaitu fungsi mysql_real_escape_string, stripslashes, strip_tags. Penjelasan dari ketiga fungsi tersebut sebagai berkut:

1. Kegunaan dari fungsi mysql_real_escape pada php adalah untuk mengabaikan karakter tertentu pada string yang mempunya fungsi untuk mengeksekusi sintak Sql. Fungsi ini terdapat pada PHP versi +5. Salah satu contoh script yang diabaikan misalnya \x00, \n, \r, \, ‘, ” and \x1a. 

2. Kegunaan dari fungsi stripslashes pada php adalah untuk menghidari mengabaikan tanda petik. Fungsi ini cara kerjanya adalah mengabaikan setiap inputan yang ditambi dengan karakter tanda petik.

3. Kegunaan dari fungsi strip_tags pada php adalah untuk mengabaikan script php dan html pada sebuah string.

Nah untuk itu inilah script cara agar form login Anda lebih aman terjaga dari pembobolan. Buat form login di php itu mudah, semudah membalikkan telapak tangan kata orang. Kalau buat saya tetep mudah membalikkan telapak tangan ya. hehe. :-D .

Langkah-langkah mebuat form login php yang aman

Berikut langkah-langkah tutorial membuat login dengan php di localhost,

1. Buatlah sebuah database dengan nama terserah Anda. Misalnya ubat saja nama tabelnya dengan pengguna, kemudian buatlah 2 field yang berisi username dan password.

JIka tidak tahu silahkan baca: cara membuat database

2. Oke, jika langkah pertama sudah selesai buatlah form login. Nah pada studi kasus ini beri nama form login ini dengan index.php. Scriptnya seperti dibawah ini,

<?php ?>
<html>
<head>
<title> Administrator sistemphp.com</title>
</head>
<body>
<center>
<h2> Welcome to sistemphp.com </h2>
Login terlebih dahulu untuk bisa memanage sistem ini..
<div id="header">
<div id="content">
<h2>Login</h2>
<form method="POST" action="cek_login.php">
<table>
<tr><td>Username</td><td> : <input type="text" name="username"></td></tr>
<tr><td>Password</td><td> : <input type="password" name="password"></td></tr>
<tr><td colspan="2"><input type="submit" value="Login"></td></tr>
</table>
</form>
</div>
<div id="footer">
Copyright &copy; sistemphp.com
</div>
</div>
</center>
</body>
</html>

2. Selanjutnya untuk mengamankan login jika username dan password di inputkan, gunakan script pengamanan berikut ini. Beri scdript di bawah ini dengan nama cek_login.php. 


<?php

$server = "localhost" ;

$username = "root" ;

$password = "" ;

$database = "simp";

//Koneksi dan memilih database di server

mysql_connect($server,$username,$password) or die ("Koneksi database gagal");

mysql_select_db($database) or die ("Database tidak tersedia");

error_reporting(0);

include "koneksi/koneksi.php";

function antiinjection($data){

$filter_sql = mysql_real_escape_string(stripslashes(strip_tags(htmlspecialchars($data,ENT_QUOTES))));

return $filter_sql;

}

&nbsp;

$username = antiinjection($_POST[username]);

$pass     = antiinjection(md5($_POST[password]));

&nbsp;

$login = mysql_query("SELECT * FROM user WHERE username='$username' AND password='$pass'");

$ketemu= mysql_num_rows($login);

$r = mysql_fetch_array($login);

&nbsp;

// Apabila username dan password ditemukan

if ($ketemu > 0){

session_start();

session_register("username");

session_register("password");

$_SESSION[Username]     = $r[username];

$_SESSION[Password]     = $r[password];

header('location: master.php?module=home');

}

else{

echo "$pass";

echo "<link href=../css/login.css rel=stylesheet type=text/css>";

echo "<center>LOGIN GAGAL! <br>

Username atau Password Anda tidak benar.<br>";

echo "<a href=index.php><b>ULANGI LAGI</b></a></center>";

}

?>

Cara kerja dari script diatas adalah ketika user memasukkan username dan password. Kemudian data di cek validasi menggunakan data yang ada pada tabel database. Kemudian pada script diatas ada error_reporting(), kegunaan dari error_reporting() adalah untuk memberikan informasi apabila terjadi error. Kemudian ada file koneksi, namun untuk script diatas script koneksi sudah saya masukkan jadi hapus saja include koneksi.php.

Setelah beberapa fungsi diatas dibawahnya ada fungsi yang dipanggil yaitu fungsi yang dibuat tadi. Kemudian descript diatas ada penggunaan fungsi md5 ini adalah fungsi yang berguna untuk mengantisipasi injeksi md5. Oke, selajutnya jika data aman, maka intruksi dilanjutkan untuk mengecek pada database apakah ada. Jika ada maka set sessi untuk mendaftarkan session ketika login dengan cara session_start(). Kemudian didaftarkan sessi username dan password. Session ini untuk keamanan ketika logout di kemudian. Apabila data tidak ada pada database maka login gagal.

Oke demikian Cara membuat login php yang aman semoga membantu.

sumber: 1, 2, 3

Postingan berikutnya

  1. sistem php
  2. sintak login
  3. source code login
  4. contoh coding php
  5. Fungsi form login
  6. coding login php
  7. fungsi login pada suatu program
  8. koding login php
  9. coding php untuk login
  10. koding php
  11. sintak form login
  12. source code form login
  13. contoh coding login php
  14. koding login
  15. sintak php untuk login
Category: PHP

6 thoughts on “Cara Membuat Login PHP yang Aman

  1. Pingback: Coding PHP logout Otomatis - Script Source Code - Contoh Program Aplikasi PHP

  2. doni

    Cara membuat 2 pengguna bagaimana ya?,
    Biar admin masuk ke halaman admin dan pengunjung masuk ke halaman pengunjung

    Reply
    1. admin Post author

      Untuk membuat 2 atau lebih pengguna, caranya bisa menggunakan level mas @doni, misalkan untuk admin kita beri level 1, kemudian misalnya dosen level 2, mahasiswa level 3 dan sebagainya.

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *