Welcome, Guest. Please login or register.

Author Topic: [PHP/MySQL] Membuat Halaman Login Sederhana Menggunakan PHP/MySQL  (Read 2391 times)

Offline Adi Sunardy

  • The man who sold the world
  • Administrator
  • Hero Member
  • *****
  • Posts: 596
  • Just an Ordinary Man

  • Activity
    0.6%
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 3.0.5 Firefox 3.0.5
    • sharing is caring
Kali ini, kita akan mencoba membuat Login Page dengan menggunakan PHP/MySQL. Contoh berikut masih merupakan contoh yang sangat sederhana, pengembangannya terserah kepada kreatifitas kita sendiri.

Disini kita akan membuat 4 file php sebagai contoh, yaitu:
  • login.php
  • ceklogin.php
  • loginsukses.php
  • logout.php
Nah, langkah-langkah yang akan kita lakukan adalah sebagai berikut:

Create Tabel "user" di dalam database "tes"
(Saya menggunakan CLI untuk MySQL, silahkan menggunakan phpMyAdmin untuk mempermudah anda)

Code: You are not allowed to view links. Register or Login
[root@fedora-box]mysql -u admin -p
Enter Password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 37428
Server version: 5.0.51a Source distribution

Type 'help;' or 'h' for help. Type 'c' to clear the buffer.

mysql>create database tes;
Query OK, 1 row affected (0.01 sec)

mysql> use tes;
Database changed

mysql> CREATE TABLE `user` (
    -> `id` int(4) NOT NULL auto_increment,
    -> `username` varchar(65) NOT NULL default '',
    -> `password` varchar(65) NOT NULL default '',
    -> PRIMARY KEY (`id`)
    -> ) TYPE=MyISAM AUTO_INCREMENT=2 ;

Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql>
mysql> --
mysql> -- Dumping data for table `user`
mysql> --
mysql>
mysql> INSERT INTO `user` VALUES (1, 'kapluk', '4321');
Query OK, 1 row affected (0.00 sec)


Membuat file login.php

Code: You are not allowed to view links. Register or Login
<table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form name="form1" method="post" action="ceklogin.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input name="myusername" type="text" id="myusername"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="mypassword" type="text" id="mypassword"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>

Tampilan di web browser anda akan seperti ini:
Membuat file ceklogin.php

Code: You are not allowed to view links. Register or Login
<?php
$host
="localhost"// Host name server anda, biasanya menggunakan localhost bila MySQL Server ada di server yang sama di mana web server kita berada
$username=""// username yang digunakan untuk mengakses MySQL (saya menggunakan user &#39;admin&#39;)
$password=""// password untuk user admin di atas untuk mengakses MySQL (password saya....husss...)
$db_name="tes"// Nama database yang suda kita buat
$tbl_name="user"// Nama Tabel yang sudah kita buat

// Koneksi ke MySQL Server dan menggunakan database
mysql_connect("$host""$username""$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

// Username dan password yang di dapat dari form login
$myusername=$_POST[&#39;myusername&#39;];
$mypassword=$_POST[&#39;mypassword&#39;];

// Untuk memproteksi MySQL Injection (lihat disini (http://us.php.net/mysql_real_escape_string) untuk keterangan detail tentang MySQL injection)
$myusername stripslashes($myusername);
$mypassword stripslashes($mypassword);
$myusername mysql_real_escape_string($myusername);
$mypassword mysql_real_escape_string($mypassword);

$sql="SELECT * FROM $tbl_name WHERE username=&#39;$myusername&#39; and password=&#39;$mypassword&#39;";
$result=mysql_query($sql);

// Mysql_num_row akan menghitung jumlah baris dari tabel
$count=mysql_num_rows($result);
// Bila hasilnya valid, seharusnya jumlah baris untuk query di atas adalah 1 baris

if($count==1){
// Register $myusername, $mypassword dan me-redirect ke halaman "loginsukses.php"
session_register("myusername");
session_register("mypassword");
header("location:loginsukses.php");
}
else {
echo 
"Username atau Pasword anda salah";
}
?>

Membuat file loginsukses.php

Code: You are not allowed to view links. Register or Login
// Mengecek apakah session teregistrasi atau tidak. Bila session tidak teregistrasi, akan redirect ke halaman utama (login.php)
// Tempatkan kode ini pada baris pertama.
<?php
session_start
();
if(!
session_is_registered(myusername)){
header("location:login.php");
}
?>


<html>
<body>
Login Berhasil!
</body>
</html>

Membuat file logout.php

Bila anda ingin membuat halaman logout, kode berikut bisa anda tempatkan di satu halaman "logout.php" dan berikan link di halaman lain untuk mengeksekusi halaman ini.

Code: You are not allowed to view links. Register or Login
// Tempatkan kode berikut di baris pertama
<?php
session_start
();
session_destroy();
?>

Untuk PHP5, halaman ceklogin.php adalah sebagai berikut

Code: You are not allowed to view links. Register or Login
<?php
ob_start
();
$host="localhost"// Host name server anda, biasanya menggunakan localhost bila MySQL Server ada di server yang sama di mana web server kita berada
$username=""// username yang digunakan untuk mengakses MySQL (saya menggunakan user &#39;admin&#39;)
$password=""// password untuk user admin di atas untuk mengakses MySQL (password saya....husss...)
$db_name="tes"// Nama database yang suda kita buat
$tbl_name="user"// Nama Tabel yang sudah kita buat

// Koneksi ke MySQL Server dan menggunakan database
mysql_connect("$host""$username""$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

// Username dan password yang di dapat dari form login
$myusername=$_POST[&#39;myusername&#39;];
$mypassword=$_POST[&#39;mypassword&#39;];


// Untuk memproteksi MySQL Injection (lihat disini (http://us.php.net/mysql_real_escape_string) untuk keterangan detail tentang MySQL injection)
$myusername stripslashes($myusername);
$mypassword stripslashes($mypassword);
$myusername mysql_real_escape_string($myusername);
$mypassword mysql_real_escape_string($mypassword);

$sql="SELECT * FROM $tbl_name WHERE username=&#39;$myusername&#39; and password=&#39;$mypassword&#39;";
$result=mysql_query($sql);


// Mysql_num_row akan menghitung jumlah baris dari tabel
$count=mysql_num_rows($result);
// Bila hasilnya valid, seharusnya jumlah baris untuk query di atas adalah 1 baris

if($count==1){
// Register $myusername, $mypassword dan me-redirect ke halaman "loginsukses.php"
session_register("myusername");
session_register("mypassword");
header("location:loginsukses.php");
}
else {
echo 
"Username atau Pasword anda salah";
}

ob_end_flush();
?>

Sekian dulu, bila ada umur panjang akan kita sambung lagi dengan bagaimana mengcreate SIGNUP PAGE/REGISTRATION PAGE, sekaligus dengan mengengkripsikan password user langsung ketika proses registrasi.

Mohon koreksi atas mistypo dan kesalahan lainnya...
Jabat Erat,


Adi Sunardy
You are not allowed to view links. Register or Login

yudhi_mentari

  • Guest
Re: [PHP/MySQL] Membuat Halaman Login Sederhana Menggunakan PHP/MySQL
« Reply #1 on: January 28, 2009, 05:39:12 PM »
makasih bang, nice learning  ;D

Offline Muhammad Nasir

  • Senior Moderator
  • Newbie
  • *****
  • Posts: 19

  • Activity
    0%
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Microsoft Internet Explorer 6.0 Microsoft Internet Explorer 6.0
Re: [PHP/MySQL] Membuat Halaman Login Sederhana Menggunakan PHP/MySQL
« Reply #2 on: January 29, 2009, 10:37:17 AM »
Mantab ... tengkyu bro ..

aneukmit

  • Guest
Re: [PHP/MySQL] Membuat Halaman Login Sederhana Menggunakan PHP/MySQL
« Reply #3 on: March 17, 2009, 12:04:44 PM »
Thankqiu bang....

akan di praktekkan....

yang untuk sign up nya di tunggu....   ;D

Offline Adi Sunardy

  • The man who sold the world
  • Administrator
  • Hero Member
  • *****
  • Posts: 596
  • Just an Ordinary Man

  • Activity
    0.6%
  • OS:
  • Windows XP Windows XP
  • Browser:
  • Firefox 3.0.6 Firefox 3.0.6
    • sharing is caring
Re: [PHP/MySQL] Membuat Halaman Login Sederhana Menggunakan PHP/MySQL
« Reply #4 on: March 17, 2009, 01:10:17 PM »
will be updated soon...begitu ada waktu luang ya, Insya Allah....lagi agak ribet neh...:)
Jabat Erat,


Adi Sunardy
You are not allowed to view links. Register or Login

rogol script

  • Guest
Re: [PHP/MySQL] Membuat Halaman Login Sederhana Menggunakan PHP/MySQL
« Reply #5 on: April 12, 2009, 02:56:11 PM »
mantap..

 
Share this topic...
In a forum
(BBCode)
In a site/blog
(HTML)


Related Topics

  Subject / Started by Replies Last post
0 Replies
1610 Views
Last post March 23, 2009, 02:42:56 PM
by Adi Sunardy
0 Replies
2200 Views
Last post July 15, 2009, 04:20:46 PM
by Adi Sunardy
0 Replies
460 Views
Last post December 09, 2010, 03:47:11 AM
by staff forum EUS
0 Replies
617 Views
Last post January 02, 2011, 07:38:19 PM
by staff forum EUS
0 Replies
1027 Views
Last post March 21, 2011, 01:24:34 PM
by Adi Sunardy