Rabu, 31 Oktober 2012

Membuat Login Multi User Dengan PHP

Assalamualaikum Wr.Wb
Untuk Kesempatan Kali ini saya akan menulis tentang PHP yaitu Tentang Membuat Multi Login. Mungkin Saya tidak akan Membuat waktu anda kelamaan untuk membaca pembuka saya, mungkin kita mulai saja sekarang untuk membuat Multi Login ini.

Konsep untuk membuat Login Multi User adalah

  1. Buat tabel user didatabase yang menyimpan data level masing-masing user
  2. Ketika Login kita akan menyimpan user ke dalam variable $SESSION
  3. Ketika User masuk ke suatu halaman, cek apakah user login berdasarkan level masing-masing
Langkah Pertama yang harus anda perhatikan adalah membuat database untuk tabel Multi Login Ini, Berikut ini adalah struktur dari tabel tersebut. (saya memberikan nama tabelnya tabeluser dan nama databasenya sekolah)

CREATE TABLE 'tabeluser' ( 'userid' varchar(20) NOT NULL,
                                               'password'varchar(50) NOT NULL,
                                               'level'varchar(15) NOT NULL,
                                                PRIMARY KEY ('userid)
                                              ) ENGINE=InnoDB DEFAULY CHARSET=latin1;

Setelah itu mari kita membuat halaman untuk login. Anda cukup membuka Notepad dan masukan Source Code dibawah ini, Lalu anda save dengan nama index.php

<html>
<head>
<title>Login</title>
</head>
<body>
<h2> Halaman Login</h2>
<pre>
<form action="log.php?op=in" method="post">
User ID    : <input type="text" name="userid"><br>
Password : <input type="text" name="password"><br>
<input type="submit" value="Masuk">
</form>
</pre>
</body>
</html>

Pada Source code diatas ada sebuah action yaitu menuju ke sebuah file log.php, maka untuk itu kita mempersiapkan dahulu file log.php Dengan Source Code dibawah ini :

<?php
session_start();
mysql_connect("localhost","root","")or die("Tidak Bisa Tekoneksi");
mysql_select_db("sekolah"); //Seseuaikan dengan nama databese yang telah anda buat

$userid = $_POST['userid'];
$password = $ $POST['password'];
$op = $_GET['op'];

if($op=="in"){
$cek = mysql_query("SELECT*FROM tabeluser WHERE userid='$userid' AND password='$password'");
if(mysql_num_rows($cek)==1){ //jika berhasil akan bernilai 1
$c = mysql_fetch_array($cek);
$_SESSION['userid'] = $['userid'];
$_SESSION['level'] = $c['level'];
if ($c['level']=="admin"){
header("location;homeadmin.php");
}else if($c['level']=="user"){
header("location;homeuser.php");
}
}else{
die("password salah <a href=\javascript;history.back()\">Kembali</a>");
}
}else if ($op=="out"){
unset($_SESSION['userid']);
unset($_SESSION['level']);
header("location;index.php");
}
?>

Pada Source Code log.php tersebut pertama-tama kita cek ke dalam tabeluser apakah ada userid dan password yang cocok. Jika ada maka set variabel $_SESSION['userid'] dan $_SESSION['level'], dimana nilai dari variable session tersebut kita ambil dari database. Jika level user adalah admin maka langsung kita arahkan ke halaman homeadmin.php. Jika level user adalah user, maka kita arahkan ke halaman homeuser,php.

Berikut ini adalah Source Code untuk homeadmin.php

<?php 
session_start();

//mengecek apakah user sudah login
if (!isset($_SESSION['userid'])){
die ("Anda Belum Login"); //Jika Belum Login..
}

//Mengecek level user 
if($_SESSIN['level']!="admin"){
die ("Anda Bukan Admin"); //Jika Bukan Admin..
}
?>
<html>
<head><title>Halaman Admin</title></head>
<body>
<?php echo "<h3> Welcome ".$SESSION['userid']."</h3>";?>
Menu : 
<a href = halaman1.php>Halaman 1</a> | <a href  = halaman2.php>Halaman 2</a>
<a href=log.php?op=out>Keluar</a>
</body>
</html>

Pada Source Code diatas untuk mengecek apakah user sudah login atau belum adalah dengan menggunakan kode if (!isset($_SESSION['userid'])), artinya jika user belum login, yang ditandai dengan telah diset-nya variable $_SESSION['userid']. Jika ternyata belum login maka kita stop sampai disitu dengan menggunakan fungsi die().
Jika user ternyata sudah login maka kita mengecek tingkatan level user. kode $_SESSION['level']!="admin") berarti jika level sama dengan admin, maka stop atau die().

Sekarang marik kita buat untuk user, untuk user kita beri nama homeuser.php berikut Source Codenya :

<?php 
session_start();

//mengecek apakah user sudah login
if (!isset($_SESSION['userid'])){
die ("Anda Belum Login"); //Jika Belum Login..
}

//Mengecek level user 
if($_SESSIN['level']!="user"){
die ("Anda Bukan User"); //Jika Bukan Admin..
}
?>
<html>
<head><title>Halaman User</title></head>
<body>
<?php echo "<h3> Welcome ".$SESSION['userid']."</h3>";?>
Menu : 
<a href = halaman2.php>Halaman 2</a> | <a href  = halaman3.php>Halaman 3</a>
<a href=log.php?op=out>Keluar</a>
</body>
</html>

Sekarang kita akan membuat halaman untuk link yang telah dikasih pada homeadmin.php dan homeuser.php.
Kita Mulai dengan halaman1.php Berikut adalah Source Codenya :

<?php 
session_start();

//Mengecek Apakah User Telah Login
if(!isset($_SESSION['userid'])){
die("Anda Belum Login"); // Jika Belum Login..
}

//Mengecek Level User
if($_SESSION['level']!="admin"){
die ("Anda Bukan Admin"); //Jika Bukan Admin..
}
?>

<html>
<head>
<title>Halaman 1</title>
</head>
<body>
<?php echo "<h3> Welcome ".$_SESSION['userid']."</h3>";?>
<h4>Ini adalah Halaman 1</h4>
</body>
</html>

Setelah itu Mari kita Lanjutkan dengan Membuat halaman2.php

<?php 
session_start();

//Mengecek Apakah User Telah Login
if(!isset($_SESSION['userid'])){
die("Anda Belum Login"); // Jika Belum Login..
}

//Mengecek Level User
if($_SESSION['level']!="admin"){
die ("Anda Bukan Admin"); //Jika Bukan Admin..
}
?>

<html>
<head>
<title>Halaman 2</title>
</head>
<body>
<?php echo "<h3> Welcome ".$_SESSION['userid']."</h3>";?>
<h4>Ini adalah Halaman 2</h4>
</body>
</html>

Setelah Anda Buat Juga Untuk halaman3.php
<?php 
session_start();

//Mengecek Apakah User Telah Login
if(!isset($_SESSION['userid'])){
die("Anda Belum Login"); // Jika Belum Login..
}

//Mengecek Level User
if($_SESSION['level']!="user"){
die ("Anda Bukan Admin"); //Jika Bukan Admin..
}
?>

<html>
<head>
<title>Halaman 3</title>
</head>
<body>
<?php echo "<h3> Welcome ".$_SESSION['userid']."</h3>";?>
<h4>Ini adalah Halaman 3</h4>
</body>
</html>

Maka setelah anda membuat halaman3.php kita telah selesai. Dan Login Dengan Multi Login Menggunakan PHP dapat anda jalankan. 
Mungkin Hanya Sampai Disini Dulu Pertemuan Kita mengenai Login Dengan Multi Login, Untuk itu apabila ada Kesalahan dan kata - kata kurang berkenan saya mohon maaf sebelumnya. 
Saya Mohon Pamit Saudara-saudara sekalian..
Assalamualaikum Wr.Wb.

Sumber : http://inoblog.blogspot.com

3 komentar:

  1. passwordnya dikasih md5 gak apa-apa mas bro?

    BalasHapus
  2. Mas...boleh minta source code nya gak, list yg diposting masih membingungkan bagi aq. Kalo boleh kirim ke email: wahid.tse@gmail.com
    thx mas bro

    BalasHapus