Cara membuat halaman login menggunakan PHP / MySQL. Fitur-fitur dari
halaman login saya mengandung validasi input menggunakan sesi PHP. Salah satu
fitur unik juga dengan halaman login saya adalah logout fungsi, itu unik karena
tidak seperti dengan halaman login yang lain setelah pengguna mengklik tombol
logout dan klik tombol belakang browser, sistem mereka memungkinkan pengguna
untuk kembali seolah-olah masih login, yang tidak sesuai untuk alasan keamanan.
Tapi di halaman login saya setelah pengguna mengklik tombol logout, pengguna
tidak bisa lagi kembali ke halaman sebelumnya. Satu-satunya cara untuk kembali
ke halaman sebelumnya adalah untuk login lagi.
Untuk memulai tutorial
ini mari kita ikuti beberapa langkah di bawah ini.
Buat Lah Database
1. Buka phpmyadmin
2. Buatlah Database Baru
3. Kemudian nama database
sebagai "simple_login".
4. Setelah membuat nama
database, klik SQL dan paste kode berikut.
Code :
1. CREATE TABLE IF NOT EXISTS `member` (
2. `mem_id`
int(11) NOT NULL AUTO_INCREMENT,
3. `username`
varchar(30) NOT NULL,
4. `password`
varchar(30) NOT NULL,
5. `fname`
varchar(30) NOT NULL,
6. `lname` varchar(30)
NOT NULL,
7. `address`
varchar(100) NOT NULL,
8. `contact`
varchar(30) NOT NULL,
9. `picture`
varchar(100) NOT NULL,
10. `gender`
varchar(10) NOT NULL,
12.) ENGINE=MyISAM
DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
Setelah Langkah Tersebut Dilanjutkan
Dengan Membuat Form
Langkah selanjutnya adalah untuk membuat form dan menyimpannya sebagai index.php. Untuk membuat formu, buka editor raka web page maker dan paste kode di bawah ini di bagian atas dokumen atau di atas tag html. Kode di bawah ini digunakan untuk melarang pengguna untuk kembali seolah-olah masih login
Langkah selanjutnya adalah untuk membuat form dan menyimpannya sebagai index.php. Untuk membuat formu, buka editor raka web page maker dan paste kode di bawah ini di bagian atas dokumen atau di atas tag html. Kode di bawah ini digunakan untuk melarang pengguna untuk kembali seolah-olah masih login
Code
1. <?php
2. //Start session
3. session_start();
4. //Unset the variables stored in session
5. unset($_SESSION['SESS_MEMBER_ID']);
6. unset($_SESSION['SESS_FIRST_NAME']);
7. unset($_SESSION['SESS_LAST_NAME']);
8. ?>
Setelah Itu Pastekan Kode Ini Dibawah
Season Di atas Tadi
1. <form name="loginform" action="login_exec.php" method="post">
2. <table width="309" border="0" align="center" cellpadding="2" cellspacing="5">
3. <tr>
4. <td colspan="2">
5. <!--the code bellow is used to display the message of the input validation-->
6. <?php
7. if( isset($_SESSION['ERRMSG_ARR']) && is_array($_SESSION['ERRMSG_ARR']) && count($_SESSION['ERRMSG_ARR']) >0 ) {
8. echo '<ul class="err">';
9. foreach($_SESSION['ERRMSG_ARR'] as $msg) {
10. echo '<li>',$msg,'</li>';
11. }
12. echo '</ul>';
13. unset($_SESSION['ERRMSG_ARR']);
14. }
15. ?>
16. </td>
17. </tr>
18. <tr>
19. <td width="116"><div align="right">Username</div></td>
20. <td width="177"><input name="username" type="text" /></td>
21. </tr>
22. <tr>
23. <td><div align="right">Password</div></td>
24. <td><input name="password" type="text" /></td>
25. </tr>
26. <tr>
27. <td><div align="right"></div></td>
28. <td><input name="" type="submit" value="login" /></td>
29. </tr>
30.</table>
31.</form>
Langkah selanjutnya adalah
membuat koneksi database dan menyimpannya Dengan Nama
"connection.php". File ini digunakan untuk menghubungkan form
Index ke database.
Code
1. <?php
2. $mysql_hostname = "localhost";
3. $mysql_user = "root";
4. $mysql_password = "";
5. $mysql_database = "simple_login";
6. $prefix = "";
7. $bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
8. mysql_select_db($mysql_database, $bd) or die("Could not select database");
9. ?>
Setelah Kita Membuat Koneksi dan Design
Form Kita Akan Membuat Proses Dari Login Tadi, Dan Kita
Simpan Dengan Nama login_exec.php
Code
1. <?php
2. //Start session
3. session_start();
4.
5. //Include database connection details
6. require_once('connection.php');
7.
8. //Array to store validation errors
9. $errmsg_arr = array();
10.
11. //Validation error flag
12. $errflag = false;
13.
14. //Function to sanitize values received from the form. Prevents SQL injection
15. function clean($str) {
16. $str = @trim($str);
17. if(get_magic_quotes_gpc()) {
18. $str = stripslashes($str);
19. }
20. return mysql_real_escape_string($str);
21. }
22.
23. //Sanitize the POST values
24. $username = clean($_POST['username']);
25. $password = clean($_POST['password']);
26.
27. //Input Validations
28. if($username == '') {
29. $errmsg_arr[] = 'Username missing';
30. $errflag = true;
31. }
32. if($password == '') {
33. $errmsg_arr[] = 'Password missing';
34. $errflag = true;
35. }
36.
37. //If there are input validations, redirect back to the login form
38. if($errflag) {
39. $_SESSION['ERRMSG_ARR'] = $errmsg_arr;
40. session_write_close();
41. header("location: index.php");
42. exit();
43. }
44.
45. //Create query
46. $qry="SELECT * FROM member WHERE username='$username' AND password='$password'";
47. $result=mysql_query($qry);
48.
49. //Check whether the query was successful or not
50. if($result) {
51. if(mysql_num_rows($result) > 0) {
52. //Login Successful
53. session_regenerate_id();
54. $member = mysql_fetch_assoc($result);
55. $_SESSION['SESS_MEMBER_ID'] = $member['mem_id'];
56. $_SESSION['SESS_FIRST_NAME'] = $member['username'];
57. $_SESSION['SESS_LAST_NAME'] = $member['password'];
58. session_write_close();
59. header("location: home.php");
60. exit();
61. }else {
62. //Login failed
63. $errmsg_arr[] = 'user name and password not found';
64. $errflag = true;
65. if($errflag) {
66. $_SESSION['ERRMSG_ARR'] = $errmsg_arr;
67. session_write_close();
68. header("location: index.php");
69. exit();
70. }
71. }
72. }else {
73. die("Query failed");
74. }
75.?>
Langkah selanjutnya adalah membuat file otentikasi dan menyimpannya sebagai auth.php Kode ini
digunakan untuk melarang pengguna untuk kembali seolah-olah
masih login
Code
1. <?php
2. //Start session
3. session_start();
4. //Check whether the session variable SESS_MEMBER_ID is present or not
5. if(!isset($_SESSION['SESS_MEMBER_ID']) || (trim($_SESSION['SESS_MEMBER_ID']) == '')) {
6. header("location: index.php");
7. exit();
8. }
9. ?>
Langkah Terakhir adalah Membuat URL
Tujuan Yaitu Home.php , Copykan Skrip Dibawah Ini dan Simpan
Code
1. <?php
2. require_once('auth.php');
3. ?>
4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5. <html xmlns="http://www.w3.org/1999/xhtml">
6. <head>
7. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
8. <title>Untitled Document</title>
9. <style type="text/css">
10.<!--
11..style1 {
12. font-size: 36px;
13. font-weight: bold;
14.}
15.-->
16.</style>
17.</head>
18.
19.<body>
20.<p align="center" class="style1">Login successfully </p>
21.<p align="center">This page is the home, you can put some stuff here......</p>
22.<p align="center"><a href="index.php">logout</a></p>
23.</body>
24.</html>
Tunggu Tutorial Berikutnya.
by : Raka Adi Nugroho
username dan password buat loginnya apa yah mas?
ReplyDeleteitu di isi dulu di bagian database mysqlnya.
Deletebaru bisa login.