Jumat, 01 Maret 2013

Membuat Sistem Login Administrator & Member


Membuat system login Administrator dan User itu sangatlah mudah (bagi saya) karena kita hanya membutuhkan data “Status” yang nantinya akan membedakan antara admin dan user.
karena saya tak pandai berbasa-basi jadi.
Let’s Go…!!! Kita langsung saja ya ke inti masalahnya.
Ada 5 tahap untuk berhasil melakukan hal kali ini, yaitu :
1. Membuat database beserta table yang dibutuhkan.
2. Membuat folder didalam directory c:appserv/www/.
3. Membuat file koneksi PHP ke database MySQL.
4. Membuat File Login.
5. Membuat File page member dan admin.

1. Membuat database beserta table yang dibutuhkan.
Loginlah ke database phpmyadmin anda seperti biasa, lalu buatlah database “latihan_1″
Lalu buatlah tabel dengan nama “myweb_log” dengan fields sebanyak 5 fields.
Fields pertama berilah nama “id_log” dengan type int kolom value 11 lalu pilihlah kolom extra dengan menselect “auto_increment” dan kolom selanjutnya pilih primary key,  Fields kedua berilah nama “name_log” dengan type varchar dan kolom value berilah “255″, Field ketiga berilah nama “email_log” dengan type varchar dan kolom value berilah “255″, Field keempat  berilah nama “password_log” dengan type varchar dan kolom value berilah “255″, terakhir berilah nama “status_log” dengan type int dan kolom value berilah “2″, jika sudah semua klik tombol “Go” untuk segera membuat table.
Penjelasan database :
“id_log” int 11 = ini adalah field id login dimana nantinya setiap user yang login user agar setiap id ini tidak sama nilainya maka saya berikan primary key dan auto_increment berfungsi untuk melanjutkan nilai id, misal : “jika id sebelumnya adalah 1 maka id selanjutnya adalah 2 dan seterusnya.
“nama_log” varchar 255 = ini adalah field nama yang nantinya akan menyimpan data nama setiap user, baik itu administrator maupun member.
“email_log” varchar 255 = ini adalah field email, pada saat nanti login data email akan sangat diperlukan.
“password_log” varchar 255 = untuk yang satu ini tak perlu saya jelaskan karena nanti anda akan mengerti dengan sendirinya jika program ini sudah berjalan baik.
“status_log” int 2 = field inilah yang akan bekerja untuk membedakan antara member dan administrator.
nah, dengan begini selesailah sudah pembuatan database kita.
2. Membuat folder didalam directory c:appserv/www/.
Buatlah folder “myweb” ke dalam C:appserv/www/ yang nantinya akan kita taruh script login, sekaligus menjadikannya sebagai sebagian url website.
semua telah tersedia dengan mudah maka next step mari kita berpusing-pusing ria :P
3. Membuat file koneksi PHP ke database MySQL.
Buatlah sebuah koneksi seperti yang pernah kita lakukan sebelumnya, jika benar-benar lupa mari kita ulangi stepnya.
Bukalah notepad pada komputer anda lalu ketiklah skript php berikut.
<?php
$hostmysql = “localhost”;
$username = “root”; //mysql_username
$password = “123456″; //mysql_password
$database = “Latihan”; //nama_database yang barusan kita buat
$conn = mysql_connect(“$hostmysql”,”$username”,”$password”);
if (!$conn) die (“Gagal Melakukan Koneksi”);
mysql_select_db($database,$conn) or die (“Database Tidak Diketemukan di Server”); ? >
Untuk mempermudah sekaligus aman, buatlah folder “connection” lalu simpan folder tersebut di directory C:Appserv/www/myweb/ lalu save file notepad tadi (yang sudah di ketikan script PHP konek) kedalam folder yang baru saja dibuat, save dengan nama connect.php .
Penjelasan Script koneksi PHP ke MySQL:
a. mysql_connect dipergunakan untuk membuat koneksi menggunakan PHP ke server MySQL. Data untuk hostname, mysql username, dan password yang digunakan telah dideklarasikan oleh variabel $hostmysql, $username, $password.
Penulisannya pada script akan sama dengan:
mysql_connect(“localhost”,”username”,”password”);
b. mysql_select_db dipergunakan untuk memilih database yang akan digunakan.
c. if (!$conn) die (“Gagal Melakukan Koneksi”); jika terjadi kegagalan dalam melakukan koneksi (!$conn), maka akan muncul pesan kesalahan Gagal Melakukan Koneksi
Bukalah notepad kembali lalu ketiklah script PHP berikut ini.
<?php
include ‘connect.php’; //koneksi ke database
$name = ‘Administrator’;
$email = ‘administrator@google.com’;
$is_password = ‘password’;
$status = ’1′;
$name_member = ‘Member’;
$email_member = ‘member@google.com’;
$password_member = ’123456′;
$status_member = ’0′;
$pass_one = md5($is_password);
$pass_two = md5($pass_one);
$pass_three = md5($pass_two);
$insert = “INSERT INTO myweb_log VALUES(”,$name,$email,$pass_three,$status)”;
$insert_member = “INSERT INTO myweb_log VALUES(”,$name_member,$email_member,$password_member,$status_member)”;
$data = mysql_query($insert);
$data_member = mysql_query($insert_member);
if($data and $data_member){
echo ‘data berhasil di tambahkan dan password ‘.$name.’, ‘.$name_member.’ telah dienscript sebanyak 3 kali hasilnya adalah ‘.$pass_three’dan password ‘.$name_member.’ adalah ‘.$password_member;
exit();
} else {
echo ‘data gagal ditambahkan’;
exit();
}
?>
Simpanlah script diatas dengan nama “tambahdata.php” lalu letakan kedalam dir C:appserv/www/myweb/connection/.
Bukalah browser anda dan ketik url “http://localhost/myweb/connection/tambahdata.php&#8221;, maka hasilnya akan terlihat seperti dibawah ini.
data berhasil di tambahkan dan password Administrator telah dienscript sebanyak 3 kali hasilnya adalah ############ dan password Member adalah 123456
Jika hasilnya tidak berhasil maka kemungkinan ada step yang terlewati atau penulisan script anda salah, (hayo jangan di korupsi ya coba cek ulang).
Terakhir buka notepad kembali lalu dibiarkan kosong lalu save kedalam dir C:appserv/www/myweb/connection/ dengan nama index.html, fungsinya agar file connect.php tak akan terlihat jika kita buka directory conection pada browser “http://localhost/myweb/connection/&#8221;, jadi tak mudah di tembus oleh hacker juga.
4. Membuat File Login.
Okey klo memamng step-step diatas tadi sudah berjalan dengan benar maka anda berhak ke step empat ini, karena dalam ilmu coding adalah ilmu pasti jika salah koma atau titik akan menghambat perintah-perintah PHP alias ERROR coding.
Bukalah notepad di komputer anda kali ini buatlah script html form login terlebih dahulu, agar kita bisa bernafas sebentar :D
<html>
<title>Welcome To Page Login | MyWebsite<title>
<body>
<center><h1>Form Login</h1></center>
   <form method=”post” action=”#”>
     <table border=”0″ width=”350px” align=”center”>
       <tr>
         <td align=”left” width=”100px”>Email</td>
         <td align=”left”><input type=”text” name=”email” style=”width:200px;”></td>
       </tr>
       <tr>
         <td align=”left” width=”100px”>Password</td>
         <td align=”left”><input type=”password” name=”password” style=”width:200px;”></td>
       </tr>
       <tr>
         <td align=”left” width=”100px”>         </td>
         <td align=”left”><input type=”submit” value=”Login” name=”submit” style=”padding:5px;”></td>
       </tr>
     </table>
   </form>
</body>
</html>
jika script html sudah di di tulis ke notepad maka savelah notepad terserbut dengan nama “index.php” kedalam direktory c:appserv/www/myweb/.
sekarang bagian PHP lalu. ( PHP mulu ya jadi mau muntah nich :D )
letakan pointer di atas script “<html>” lalu ketiklah.
<?php
session_start();
include ‘connection/connect.php’; //file koneksi
$is_password = $_POST['password'];
$pass_one = md5($is_password);
$pass_two = md5($pass_one);
$pass_three = md5($pass_two);
if($_POST){
   $query = mysql_query(“SELECT * FROM myweb_log WHERE email_log =’.$_POST['email'].’ and password_log = ‘.$pass_three.’”);
   $cek = mysql_num_rows($query);
   if($_GET[msg]!=”){
   $msg = $_GET[msg];
   }
   if($cek==1){
      $stats = mysql_fetch_array($query);
      $_SESSION['is_email'] = $_POST['email'];
      $_SESSION['is_pass'] = $_POST['password'];
      $_SESSION['is_stats'] = $stats['status_log'];
      header(“Location: http://localhost/myweb/admin.php”);
      exit();
   else {
      $query_member = mysql_query(“SELECT * FROM myweb_log WHERE email_log =’.$_POST['email'].’ and password_log = ‘.$_POST['password'].’”);
      $cek_member = mysql_num_rows($query_member);
      if($cek_member==1){
         $stats_member = mysql_fetch_array($query_member);
         $_SESSION['is_email'] = $_POST['email'];
         $_SESSION['is_pass'] = $_POST['password'];
         $_SESSION['is_stats'] = $stats_member['status_log'];
         header(“Location: http://localhost/myweb/member.php”);
         exit();
     } else {
         $msg = ‘Email atau Password Salah’;
     }
   }
}
?>
<html>
Terakhir buatlah script pesan apa bila terjadinya error terhadap form, taruhlah di sebelah tombol “Login”.
<td align=”left”><input type=”submit” value=”Login” name=”submit” style=”padding:5px;”> <?php echo $msg; ?></td>
5. Membuat File page member dan admin.
Karena semua sudah siap sekarang bagian akhirnya ada membuat page untuk masing-masing user, karena tak mau di satukan makan kita buat 2 page untuk 2 jenis user, nantinya admin dapat memonitor seluruh kegiatan member bahkan admin bisa menghapus user jika user bertingkah tidak wajar.
okey, pertama-tama kita akan membuat page administrator terlebih dahulu.
buka notepad di komputer anda lalu ketikan script berikut.

<?php
session_start();
include 'connection/connect.php'; //file koneksi
//cek status user apakah dia login sebagai administrator atau member
$cek = mysql_query("SELECT * FROM myweb_log WHERE email_log ='.$_SESSION['is_email'].' and password_log = '.$_SESSION['is_pass'].'");
$stats = mysql_fetch_array($query);
//jika dia login sebagai member maka kita lokasikan di ke index.php untuk login sebagai admin
if($_SESSION['is_stats']!=1 and $stats!=1){
header("Location: http://localhost/myweb/index.php?msg=silahkan login sebagai admin");
exit();
} else {
?>
<html>
<title>Welcome To Page ADMINISTRATOR | MyWebsite<title>
<body>
<center><h1>ANDA TELAH LOGIN SEBAGAI ADMINISTRATOR</h1></center>
</body>
</html>
<?php } ?>
Lalu save file notepad yang telah di ketik script diatas, simpanlah di directory “C:Appserv/www/myweb/” satu folder dengan index.php, simpan dengan nama “admin.php”.
Buka kembali notepad-nya lalu ketik script dibawah ini untuk membuat page member.

<?php
session_start();
include 'connection/connect.php'; //file koneksi
//cek status user apakah dia login sebagai administrator atau member
$cek = mysql_query("SELECT * FROM myweb_log WHERE email_log ='.$_SESSION['is_email'].' and password_log = '.$_SESSION['is_pass'].'");
$stats = mysql_fetch_array($query);
//jika dia login sebagai member maka kita lokasikan di ke index.php untuk login terlebih dahulu
if($_SESSION['is_stats']=='' and $stats['status']==''){
header("Location: http://localhost/myweb/index.php?msg=silahkan login terlebih dulu");
exit();
} else {
?>
<html>
<title>Welcome To Page MEMBER | MyWebsite<title>
<body>
<center><h1>ANDA TELAH LOGIN SEBAGAI MEMBER</h1></center>
</body>
</html>
<?php } ?>
Lalu save file notepad yang telah di ketik script diatas, simpanlah di directory “C:Appserv/www/myweb/” satu folder dengan index.php, simpan dengan nama “member.php”.
Lalu lakukan pengetesan dengan cara membuka browser dan masukan URL ini “http://localhost/myweb/admin.php&#8221; atau “http://localhost/myweb/member.php&#8221; jika masuk ke page login dan terdapat pesan “silahkan login terlebih dulu” atau “silahkan login sebagai admin” maka script telah berjalan dengan baik silahkan login sebagai admin dengan email “administrator@google.com” dan passwordnya adalah “password” atau login sebagai member dengan email “member@google.com” dan passwordnya adalah “123456″, jika login berhasil dengan begitu selesailah sudah pembahasan PHP kita kali ini.
sekian pembelajarannya, kalau ada saran. bisa coment dibawah ini.

Tidak ada komentar:

Posting Komentar