Monday, June 11, 2012

Cara Membuat Skrip Secure Login Di PHP dan MySQL

Langkah pertama
Buat  database MySQL dengan database manager Anda. Cara ini untuk berasumsi bahwa Anda bernama tes database, tetapi Anda mungkin nama itu apa saja.

Contoh:
CREATE TABLE `members` (
  `username` varchar(20),
  `password` varchar(128)
)


Lalu Buat tabel MySQL bernama members. Ini harus memegang dua kolom, username dan password, baik dari tipe data varchar dengan maksimum 20 dan 128 huruf. Panjang kolom password ditentukan oleh algoritma hash yang dipilih (seperti sha512 digunakan dalam contoh ini).

Contoh :
<form action="process_login.php" method="post">
Username: <input type="text" name="username" /><br />
Password: <input type="password" name="password" /><br />
<input type="submit" value="Login" />
</form>


Buat form login. Ini harus menjadi bentuk HTML dengan dua text fields, bernama username dan password. Bentuk kirimkan adalah juga diperlukan. Pastikan tindakan diatur ke halaman pengolahan PHP dan metode sebagai post.
 
Contoh (Login ke server MySQL):

$host = 'localhost'; // Host name Normally 'LocalHost'
$user = 'root'; // MySQL login username
$pass = ''; // MySQL login password
$database = 'test'; // Database name
$table = 'members'; // Members name
mysql_connect($host, $user, $pass);
mysql_select_db($database);

Contoh (Memvalidasi):

  if(mysql_num_rows($result))
{
  // Login
  session_start();
  $_SESSION['username'] = htmlspecialchars($username); // htmlspecialchars() sanitises XSS
}
else
{
  // Invalid username/password
  echo '<p><strong>Error:</strong> Invalid username or password.</p>';
}

// Redirect
header('Location: http://www.example.com/loggedin.php');
exit;


Buat halaman pengolahan login. Jika mengikuti contoh sebelumnya kita, ini harus dinamai process_login.php. Anda harus menggunakan mysql_real_escape_string () untuk melarikan diri dari username dari suntikan SQL dan menggunakan fungsi hashing seperti hash dengan SHA512 untuk keamanan tambahan.

Contoh:
session_start();
if(isset($_SESSION['username']))
{
  // Logged in
  echo '<p>You are logged in as '. $_SESSION['username']. '.</p>';
}
else
{
  // Not logged in
  echo '<p>You are not <a href="login.php">logged in</a>.</p>';
}

Periksa login status. Lakukan ini dengan memeriksa apakah nama pengguna dalam variabel session
Anda juga dapat menampilkan nama pengguna mereka. 
 
session_start();
session_destroy();
header('Location: http://www.example.com/');



Anda ingin mencari refrensi dan contoh program lengkap ? Kami ada. Sekarang Anda bisa mencari Programming PHP MySQL di situs ini : www.panduanSkripsi.net. Koleksi program lengkap di sana, proyek PHP dan MySQL, juga jQuery dan Framework. Bukunya juga ada.

No comments:

Post a Comment