Email Verifikasi Pendaftaran dengan PHP, MySQL dan SMTP Gmail

logo

kode pendaftaran ini akan dibuat dengan angka random yang di md5 biar susah ditebak. kode ini akan ditambahkan dalam database setiap user melakukan pendaftaran. contoh sql insertnya seperti ini:

 

$kode=md5(rand(0,10000));

INSERT INTO pengguna (username, password,email,isaktif kode)

VALUES ($username, $password, $email,'0', '$kode')

Kemudian, bagian mengirim email, tidak susah, langkah langkahnya adalah:

  1. Buka php.ini di apache/lib, hilangkan tanda titik koma (;) di depan extention=php_openssl.dll tujuannya adalah untuk mengaktifkan modul open ssl karena gmail make ssl. restar apache nya.
  2. download phpmailer di http://sourceforge.net/projects/phpmailer/ kemudian ekstrak ke folder ang sama dengan tempat naruh file untuk proses register.
  3. Siapkan sebuah alamat email gmail yang akan digunakan untuk mengirim email.
  4. tambahkan kode berikut pada baris tempat register berhasil

require("phpmail/class.phpmailer.php"); // path to the PHPMailer class

$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Mailer = "smtp";
$mail->SMTPSecure = 'tsl';
$mail->Host = "ssl://smtp.gmail.com";
$mail->Port = 465;
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "DIGANTI-USERNAME-GMAIL-NYA@gmail.com"; // SMTP username
$mail->Password = "DIGANTI-PASSWORD-GMAIL-NYA"; // SMTP password
$mail->From = "DIGANTI-USERNAME-GMAIL-NYA@gmail.com";
$mail->AddAddress($email);
$mail->Subject = "Konfirmasi Registrasi Website";
$mail->Body = "klik link berikut untuk validasi user http://ALAMAT-WEBSITE/validate.php?id=".$kode;
$mail->Send()
yang perlu diganti adalah
  1. $mail->Username  diisi username gmail yang akan digunakan untuk mengirim email
  2. $mail->Password diisi password gmail yang akan digunakan untuk mengirim email
  3. $mail->From diisi alamat email yg mengirim email
  4. pastikan dalam $mail->AddAddress() adalah variabel yg berisi alamat email user yang baru mendaftar
  5. $mail->Body silahkan sesuaikan katakatanya.
Proses registrasi dan pengiriman email selesai. selanjutnya adalah bagaimana jika user meng klik alamat yg sudah dikirim via email? gampang, tinggal buat saja sebuah file validate . php , isinya kira kira untuk mengambil id kode yang dikirim, kemudian cari di database kode yang sesuai, kemuadian ubah field isaktifjadi 1. perintah sql nya kira kira seperti ini.
UPDATE pengguna SET isaktif='1' where kode='$_GET[id]'