Monday - May 12, 2008

Home | Site Map | Channels | Profile | Press Room | Services | Contact 

currently 10 user(s) online

search 

   Latest News

»

sony-ak.com Luncurkan Kamus Teknologi Informasi (May 27, 2006)

»

sony-ak.com Luncurkan IT Event Calendar (May 20, 2006)

»

Web Chat Berbasis AJAX dari sony-ak.com (May 09, 2006)

»

sony-ak.com Advertising Program (May 01, 2006)

»

Sony AK di Tabloid PCplus (April 18, 2006)

news archives » 


   Random Article

»

Mengelola Informasi untuk Perusahaan (2458)

»

Mencari Contoh Design Website di Internet Untuk Pembuatan Website Anda (8123)

»

Membangun Kembali Database Northwind Pada SQL Server (3144)

»

Langkah-langkah Persiapan Presentasi dengan Pihak Klien (3838)

»

Mengetahui Kecepatan Prosesor dengan Instruksi RDTSC (2782)

   Newsletter

Join our newsletter, you will get alert about content updates

powered by Yahoo! Groups















Nedstat Basic - Free web site statistics

 
 
Konsep Membuat Fasilitas "Forget Password" dengan PHP+MySQL

Author: Ariesa Rahardjo
Published: April 15, 2006
Visits: 5804 - Category: PHP
 
     
 

Saya banyak mendapatkan pertanyaan seputar cara membuat fasilitas "forget password" pada aplikasi web. Untuk itu pada kesempatan kali ini saya akan mencoba berbagai konsep dan logika mengenai cara pembuatan fasilitas "forget password" ini. Sebelumnya saya akan jelaskan terlebih dahulu apa itu fasilitas "forget password". Fasilitas ini seringkali kita jumpai pada jasa layanan web, misalnya webmail, portal, social network (Friendster, Orkut dan lain-lain). Intinya fasilitas "forget password" ini ditujukan bagi orang-orang yang memiliki account di suatu layanan web dan dia lupa dengan password account yang dimilikinya.

Sekarang mari kita coba untuk mensimulasikan pembuatan fasilitas "forget password" ini. Ceritanya saya akan membuat sebuah aplikasi web dengan fasilitas login. Aplikasi web ini adalah aplikasi web mirip seperti friendster. Mari kita buat struktur database-nya (dengan MySQL).

create table anggota
(
  uname varchar(20),
  passwd varchar(30),
  nama varchar(100),
  alamat varchar(100),
  email varchar(255)
)

Kemudian coba isi dengan beberapa data seperti berikut ini.

insert into anggota (uname,nama,email) values ('ari','Ari','ari@sony-ak.com');
insert into anggota (uname,nama,email) values ('agus','Agus','agus@sony-ak.com');
insert into anggota (uname,nama,email) values ('budi','Budi','budi@sony-ak.com');
insert into anggota (uname,nama,email) values ('ika','Ika','ika@sony-ak.com');

Struktur database di atas sangatlah sederhana, karena pada simulasi ini kita hanya membutuhkan satu tabel saja. Dari tabel anggota di atas, maka kolom-kolom yang akan kita manfaatkan hanya ada dua, yaitu uname dan email. Kolom uname akan kita gunakan untuk mencari username orang yang lupa password-nya. Sedangkan kolom email akan kita gunakan untuk mengirimkan e-mail yang berisi informasi password kepada username yang lupa password-nya tadi.

Berikut ini adalah gambar layar login "bohong-bohongan" dari aplikasi kita dan berisi link untuk ke halaman "forget password".

Sekarang kita akan buat tampilan dari halaman "forget password" nya.

Berikut ini adalah potongan dari code tag FORM dari halaman di atas.

<form method="POST" action="p_forget_password.php">
<p>Masukkan username Anda. Berikutnya kami akan mengirimkan password ke
alamat e-mail yang terasosiasi dengan username tersebut.</p>
<p>Username: <input type="text" name="username" size="20"></p>
<p><input type="submit" value="Send Password" name="B1"></p>
</form>

Jika Anda menekan tombol "Send Password" pada halaman "forget password" di atas, maka dia akan menjalankan file p_forget_password.php. File p_forget_password.php inilah yang akan berisi script PHP kita untuk mencari username dan mengirimkan password ke alamat e-mail si pemegang username tersebut.

Sekarang saya akan jabarkan logika dan konsep dari apa yang akan kita lakukan pada script p_forget_password.php tersebut.

  1. Melakukan koneksi ke database
    Untuk ini Anda harus tahu cara koneksi ke database, dalam hal ini MySQL.
  2. Melakukan query ke database untuk mencari username yang dimaksud
    Untuk ini Anda harus paham perintah SQL SELECT.
  3. Mengirimkan data password ke e-mail si pemegang username tadi
    Untuk ini Anda harus mengetahui cara mengirim e-mail dengan PHP (menggunakan fungsi mail()).

Konsep di atas adalah konsep yang sangat dasar sekali bagi suatu fasilitas "forget password" dan saya harap Anda mengerti. Apabila Anda sudah paham, maka akan sangat mudah nantinya bagi Anda untuk mengembangkannya lebih lanjut.

Berikut ini adalah contoh isi script p_forget_password.php. Script ini merupakan implementasi dari konsep di atas.

<?
  //isi variabel untuk kepentingan mysql
  $server = "localhost"; //isi dengan nama server database mysql
  $username = "cyber"; //isi dengan username mysql
  $password = "cyberpass"; //isi dengan password db mysql
  $db_name = "testdb"; //isi dengan nama db mysql

  //lakukan koneksi ke database
  $db = mysql_connect($server,$username,$password) or DIE("Connection to database failed, perhaps the service is down !!");
  mysql_select_db($db_name) or DIE("Database name not available !!");

  //tampung variabel dari form forget_password.htm
  $uname = $_POST['username'];

  //lakukan query ke database untuk mencari username tersebut
  $profile = mysql_query("select * from anggota where uname = '" . $uname . "'", $db);
  $rowcount = mysql_num_rows($profile);
  if ($rowcount == 1) {
    //username ditemukan, sekarang kirim e-mail...
    $header = "From: Admin <admin@your.service.com>\n";
    $header .= "MIME-Version: 1.0\n";
    $header .= "Content-Type: text/plain; charset=iso-8859-1\n";
    $header .= "Content-Transfer-Encoding: 8bit\n";
    $header .= "X-Mailer: sony-ak.com (php; 1.00)\n";
    $body = "Your password is: " . mysql_result($profile, 0, "passwd");
    mail(mysql_result($profile,0,"email"), "Your password info", $body, $header);
    header("Location: forget_password.htm");
  }

?>

Silakan coba jalankan script di atas, modifikasi beberapa bagian dan sesuaikan dengan keadaan Anda, dan coba lihat hasilnya. Anda bisa mendownload source code lengkapnya pada bagian akhir dari tulisan ini.

Referensi

  • Dari berbagai sumber di internet dan pengalaman sendiri.

Demikian tulisan mengenai contoh cara membuat fasilitas "forget password" dengan menggunakan PHP dan MySQL. Semoga berguna bagi Anda semuanya. Jika ada komentar atau saran bisa dikirimkan melalui ariesa.rahardjo@gmail.com. Jika Anda memiliki ide tulisan atau tips menarik, silakan kirimkan saja kepada kami melalui e-mail article@sony-ak.com. Untuk membaca tulisan menarik lainnya silakan menuju ke situs Sony AK Knowledge Center dengan alamat di www.sony-ak.com.

Silakan download contoh lengkap script melalui simbol di samping.

Terima kasih.




 Recommended articles
 

»

Integrasi SQL Server 2000 dan Active Directory Service (ADS) (4367)

»

Mendengarkan Siaran Radio Internet dengan Winamp (6129)

»

Tips Mencetak Halaman Web dengan Fungsi Print() (2031)

»

Komponen Terbilang Dengan Borland Delphi (4876)

»

Apa itu Metadata? (3148)

 Send your comments or suggestions
Full Name :
E-mail :
Comments :
 
 

  Privacy | Site Map | Advertise

  Copyright © 2003 - 2006 Sony AK Knowledge Center - all rights reserved

  info@sony-ak.com