Aktivasi Email

Aktivasi Email


Halo semua. Lama tidak menulis artikel akhirnya ada kesempatan untuk menulis kembali. Yah, artikel kali ini bukan artikel baru. Tapi belum pernah dibahas sebelumnya di ilmuwebsite.com. Yah, mudah2an artikel ini dapat membantu para maniak PHP untuk membuat fitur aktivasi email pada web-nya. Aktivasi email ini dibuat masih sangat sederhana. Silahkan anda kembangkan sendiri.


Buat databasenya terlebih dahulu :

CREATE DATABASE aktivasi_email;

?

Lalu buat struktur tabelnya :

????????? ?

??????????? CREATE TABLE anggota (

? id mediumint(8) NOT NULL auto_increment,

? nama varchar(50) collate latin1_general_ci NOT NULL,

? email varchar(100) collate latin1_general_ci NOT NULL,

? aktif tinyint(1) NOT NULL,

? PRIMARY KEY? (id)

) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=6 ;

?

Nih script PHP-nya :

Config.php :

<?php

????? $localhost = "localhost";

????? $username = "root";

????? $password = "";

????? $db = "aktivasi_email";

????? mysql_connect($localhost,$username,$password);

????? mysql_select_db($db);

?>

?

Index.php

<?php

????? include "config.php";

????? if($_GET['ok'] == "daftar")

????? {

??????????? $nama = $_POST['nama'];

??????????? $email = $_POST['email'];

??????????? mysql_query("INSERT INTO anggota (nama,email,aktif) values ('$nama','$email','0')");

??????????? $email_registrasi = mysql_query("SELECT * FROM anggota WHERE email='$email'");

??????????? $email_aktivasi = mysql_fetch_array($email_registrasi);

??????????? $pesan = "Hallo $nama, Silahkan klik link aktivasi dibawah ini untuk mengaktifkan keanggotaan anda \n \n http://www.situsanda.com/aktivasi.php?aktivasi=$email_aktivasi";

??????????? @mail("$email","Aktivasi email","$pesan","From: email_anda@yahoo.com");

??????????? print "<center>Silahkan Klik Link aktivasi yang telah kami kirim ke email anda!</center><br>";

????? }

?>

<form name="form1" method="post" action="?ok=daftar">

? <p>Nama : <br>

??? <input name="nama" type="text" id="nama">

</p>

? <p>Email :<br>

??? <input name="email" type="text" id="email">

? </p>

? <p>

??? <input type="submit" name="Submit" value="Ok">

??? </p>

</form>

?

Aktivasi.php

<?php

????? include "config.php";

????? // ini untuk mengecek di database apakah email terdaftar sebelumnya.

????? $url = $_SERVER['REQUEST_URI'];

????? $cek_email = stristr($url,"aktivasi=");

????? $email = substr($cek_email,9);

????? $email_registrasi = mysql_query("SELECT * FROM anggota WHERE email='$email'");

????? $email_aktivasi = mysql_fetch_array($email_registrasi);

????? if($_GET['aktivasi'] == $email_aktivasi['email'])

????? {

??????????? // aktifkan keanggotaan

??????????? mysql_query("UPDATE anggota SET aktif='1' WHERE email='$email_aktivasi[email]'");

??????????? print "Account anda telah diaktifkan !!";

????? }

?>

?

Penjelasan singkat :

file config.php berguna untuk mengatur koneksi ke database. Saya pikir yang ini tidak perlu dijelaskan terlalu dalam. Pada file index,php, terdapat perintah ?mail? yang berfungsi mengirim ke email anda alamat link http://www.situsanda.com/aktivasi.php?aktivasi=$email_aktivasi. Jika anda membuka email anda, anda cukup meng-klik link tadi dan secara otomatis anda akan masuk ke file aktivasi.php?aktivasi=email_anda. Dan pada file aktivasi.php akan dilakukan perubahan pada tabel ?aktif?? dari angka 0 menjadi 1, dimana angka 0 artinya belum aktif sedangkan 1 sudah aktif.

?

Salam,

Ivan

Email 1 : ivan_wen_piao@yahoo.co.id

Email 2 : ivan@ilmuwebsite.com

Web : www.ivan.ilmuwebsite.com

Artikel Terkait :