Kamis, 20 Oktober 2011

Login Multi-User dengan PHP dan Mysql


Step 1 : Menyiapkan Database
1.Siapkan database dengan nama db_multiuser.
2.Buat tabel dengan nama tb_user, buat dengan field – field seperti gambar berikut,
       3.Insertkan beberapa sample data untuk tb_user.
  1. INSERT INTO `db_multiuser`.`tb_user` (`id`, `username`, `password`, `tipe`) VALUES (NULL, 'ani', 'ani','admin'), (NULL, 'budi', 'budi', 'operator');

Step 2 :Membuat file konfigurasi
  1. Ketikkan script berikut,
    <?php
    $host = "localhost";
    $user = "root"; //sesuaikan dengan user mysql anda
    $pass = ""; //sesuaikan dengan password mysql anda
    $dbName = "db_multiuser";
    mysql_connect($host, $user, $pass);
    mysql_select_db($dbName)
    or die ("Koneksi Gagal : ".mysql_error());
    ?>
  2. Simpan dengan nama connect.php
  3. Penjelasan : connect.php merupakan file konfigurasi yang akan menghubungkan sistem login yang kita buat dengan mysql database.

Step 3 :Membuat form login

  1. Ketikkan script berikut,
    &lt;center&gt;
    &lt;h2&gt; &lt;b&gt; Login Page &lt;/b&gt; &lt;h2&gt;&lt;form method="post" 
    action="proses.php"&gt;&lt;table border="0" align="center" cellpadding="5" 
    cellspacing="8"&gt;&lt;tr bgcolor="orange"&gt;
    &lt;td&gt; UserName Anda ! &lt;/td&gt;
    &lt;td&gt; &lt;input name="username" type="text"&gt; &lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr bgcolor="orange"&gt;
    &lt;td&gt; Password ! &lt;/td&gt;
    &lt;td&gt; &lt;input name="password" type="password"&gt; &lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
    &lt;td&gt; &amp;nbsp; &lt;/td&gt;
    &lt;td&gt; &lt;input name="submit" type="submit" value="login"&gt; &lt;/td&gt;
    &lt;/tr&gt;
    &lt;/table&gt;
    &lt;/form&gt;
    &lt;/center&gt;
  2. Simpan dengan nama formlogin.php
  3. Script ini akan menampilkan form login untuk isian username dan password. Perhatikan bagian action="proses.php". Ini menunjukkan bahwa isian dari username dan password akan diproses (diberi action) oleh file proses.php. File ini akan kita buat pada step berikutnya.

Step 4 :Membuat pemrosesan login

  1. Ketikkan script berikut,
    <?php
    session_start(); //memulai session
    include "connect.php";//mengambil isian username dan password dari form
    $username = $_POST['username'];
    $password = $_POST['password'];
    //query untuk mengambil data user dari database sesuai dengan username inputan form
    $q = "SELECT * FROM tb_user WHERE username = '$username' ";
    $result = mysql_query($q);
    $data = mysql_fetch_array($result);
    //cek kesesuaian password masukan dengan database
    if ($password == $data['password']) {
    //menyimpan tipe user dan username dalam session
    $_SESSION['tipe'] = $data['tipe'];
    $_SESSION['username'] = $data['username'];
    include "menu.php";
    }
    //jika password tidak sesuai
    else {
    $warning = "Username / Password Salah";
    echo $warning;
    }
    ?>
  2. Simpan dengan nama proses.php

Step 5 : Membuat tampilan khusus user

  1. Ketikkan script berikut,
    <?php
    session_start();
    include "connect.php";
    echo "<center>";
    echo "<h3> Menu </h3>";
    if ($_SESSION['tipe'] == "admin") {
    echo " Anda Login sebagai Admin";
    }
    else if ($_SESSION['tipe'] == "user") {
    echo " Anda Login sebagai User";
    }
    ?>
  2. Simpan dengan nama menu.php
  3. Penjelasan : Script ini akan menampilkan informasi sesuai dengan siapa user yang login.

Step 6 : Menjalankan Sistem Login

  1. Pergi ke http://localhost/
  2. Pilih file formlogin.phpuntuk mulai menjalankan aplikasi. Anda akan melihat tampilan seperti berikut,
    Login Page
  3. Masukkan username = ani; password = ani
  4. Maka sistem akan menampilkan keterangan seperti berikut,
    Admin Login
  5. Jika anda login sebagai operator (username : budi; password : budi), maka akan muncul informasi seperti gambar dibawah,
    Operator Login
NB. Simpan semua file php dari step 2 – step 5 ke dalam SATU folder yang SAMA.

Perbedaan Tipe Client-Server


1.File Servers
oFile server vendors mengklaim bahwa mereka pertama menemukan istilah client-server.
oUntuk sharing file melalui jaringan

2.Database Servers
oClient mengirimkan SQL requests sebagai pesan pada database server,selanjutnya hasil perintah SQL dikembalikan
oServer menggunakan kekuatan proses yang diinginkan untuk menemukan data yang diminta dan kemudian semua record dikembalikan pada client.
3.Transaction Servers (Transaksi Server)
oClient meminta remote procedures yang terletak pada server dengan sebuah SQL database engine.
oRemote procedures ini mengeksekusi sebuah grup dari SQL statement
oHanya satu permintaan / jawaban yang dibutuhkan untuk melakukan transaksi
4.Groupsware Servers
oDikenal sebagai Computer-supported cooperative working
oManajemen semi-struktur informasi seperti teks, image, , bulletin boards dan aliaran kerja
oData diatur sebagai dokumen
5.Object Application Servers
oAplikasi client/server ditulis sebagai satu set objek komunikasi
oClient objects berkomunikasi dengan server objects melalui Object Request Broker (ORB)
oClient meminta sebuah method pada remote object
6.Web Application Servers (Aplikasi Web Servers)
oWorld Wide Web adalah aplikasi client server yang pertama yang digunakan untuk web.
oClient dan servers berkomunikasi menggunakan RPC seperti protokol yang disebut HTTP.

Pengertian Client Server


Client-Server adalah arsitektur jaringan yang memisahkan client(biasanya aplikasi yang menggunakan GUI ) dengan server. Masing-masing client dapat meminta data atau informasi dari server.
Sistem client server didefinisikan sebagai sistem terdistribusi, tetapi ada beberapa perbedaan karakteristik yaitu :
1.Servis (layanan)
oHubungan antara proses yang berjalan pada mesin
yang berbeda
oPemisahan fungsi berdasarkan ide layanannya.
oServer sebagai provider, client sebagai konsumen

2.Sharing resources (sumber daya)
oServer bisa melayani beberapa client pada waktu yang sama, dan
meregulasi akses bersama untuk share sumber daya dalam menjamin
konsistensinya.
3.Asymmetrical protocol (protokol yang tidak simetris )
Many-to-one relationship antara client dan server.Client selalu
menginisiasikan dialog melalui layanan permintaan, dan server menunggu
secara pasif request dari client.
4.Transparansi lokasi
Proses yang dilakukan server boleh terletak pada mesin yang sama atau pada
mesin yang berbeda melalui jaringan.Lokasi server harus mudah diakses dari
client.
5.Mix-and-Match
Perbedaan server client platforms
6.Pesan berbasiskan komunikasi
Interaksi server dan client melalui pengiriman pesan yang menyertakan
permintaan dan jawaban.
7.Pemisahan interface dan implementasi
Server bisa diupgrade tanpa mempengaruhi client selama interface pesan
yang diterbitkan tidak berubah.
Client Server System :