Sabtu, 10 Desember 2011

Membuat Form Login


Membuat Form Login



Yang pertama kita buat dulu database dengan nama login, lalu buat sebuah tabel dengan nama tabel_user.
create database login;
use login;
create table tabel_user (id int(10) not null auto_increment primary key,
namauser varchar(50),
password varchar(50));
insert into tabel_user value ("1","admin","admin123");
Berikut skrip untuk membuat formnya, simpan sebagai index.php.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<html>
<head>
<title>Form Login</title>
</head>

<body>
<?php
//bagian ketika password atau user salah memasukkan
if(isset($_GET['error'])) {
        echo "Anda Bukan Administrator";}
?>
<form name="form1" method="post" action="proses_login.php">
  <table border="0">
    <tr>
      <td>Username</td>
      <td>:</td>
      <td><label>
        <input type="text" name="namauser" id="namauser" />
      </label></td>
    </tr>
    <tr>
      <td>Password</td>
      <td>:</td>
      <td><label>
        <input type="text" name="pass" id="pass" />
      </label></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td><input type="submit" name="login" id="login" value="L O G I N" />
      &nbsp;
      <label>
        <input type="reset" name="Reset" id="button" value="C A N C E L" />
      </label></td>
    </tr>
  </table>
</form>
</body>
</html>
<?php
//bagian ketika password atau user salah memasukkan
if(isset($_GET['error'])) {
echo “Anda Bukan Administrator”;}
?>
Bagian ini merupakan fungsi penampil informasi saja, artinya jika kita salah memasukkan password/username maka skrip akan memberikan informasi “Anda Bukan Administrator“.Kemudian pada bagian
<form name=”form1″ method=”post” action=”proses_login.php”>
Bagian ini merupakan proses kemana data dari form nanti akan menuju langkah selanjutnya yaitu proses_login.php. Untuk lebih jelasnya anda bisa melihat lagi artikel saya tentang membuat buku tamu
Skrip berikutnya, koneksi.php
1
2
3
4
5
6
7
8
<?php
$host="localhost";
$user="root";
$pass="admin";
$datab="login";
$koneksi=mysql_connect($host,$user,$pass) or die ("ERROR");
$opdb = mysql_select_db($datab);
?>
proses_login.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
include('koneksi.php');
$login = mysql_query("SELECT * FROM tabel_user WHERE namauser = '$_POST[namauser]' AND password = '$_POST[pass]'");

$hitungbaris = mysql_num_rows($login);
$hitungbaris1 = mysql_fetch_array($login);
if ($hitungbaris > 0) {
        session_start();
        session_register("namauser");
        $_SESSION[namauser] = $hitungbaris1[namauser];
        header("location:login.php");
        }
        else
        {
               header("location:index.php?error");
        }
?>
Mari kita bahas satu persatu pada proses_login.php.
*include (koneksi.php) – koneksi.php merupakan file yang berisi penghubung antara program dengan database,oleh karena itu kita ikut sertakan dengan fungsi include.
*mysql_query – berisi query atau fungsi untuk mencocokkan isi tabel_user dengan inputan pada form.
*session_register – artinya kita mendaftarkan sebuah session (username) agar data-data yang berhubungan dengan username selalu dipakai, session selalu diawali dengan session_start().
*$_SESSION[namauser] = $hitungbaris1[namauser]; – artinya , jika nama session sama dengan tabel_user maka form akan diproses ke halaman login.php , jika tidak akan memanggil skrip
<?php
//bagian ketika password atau user salah memasukkan
if(isset($_GET['error'])) {
echo “Anda Bukan Administrator”;}
?>
login.php pada contoh ini hanya berisi konfirmasi bahwa kita telah berhasil login, jadi bisa dikembangkan sendiri.
<html>
<head>
<title>Login sukses</title>
</head>

<body>
<h1>Login Sukses, Selamat Datang</h1>
<a href="logout.php">logout</a>
</body>
</html>
yang terakhir adalah logout.php, file ini berisi skrip untuk menutup session dan mengembalikan ke halaman awal
1
2
3
4
5
6
<?php
session_start();
unset($_SESSION['username']);
session_destroy();
header("Location: index.php");
?>
Semoga Bermanfaat :)

0 komentar:

Posting Komentar

Terbit Lapak

Lapak

 
Design by Free WordPress Themes | Bloggerized by dyan123 - Premium Blogger Themes | cheap international calls