Membuat email validasi dengan php

Kali ini kita akan membuat e-mail validasi yang digunakan pada saat pengunjung melakukan pendaftaran,ini berguna untuk mengecek apakah e-mail yang digunakan pengunjung valid atau tidak.didalam membuat modul ini kita membutuhkan dua buah tabel untuk menampung data sementara dan data valid,dalam kasus ini kita akan membuat tabel temp sebagai penampung data sementara dan tabel user sebagai tabel anggota
Tabel temp
?
1
2
3
4
5
6
7
8
CREATE TABLE temp (
  kode_verifikasi int(5),
  username varchar(30),
  password varchar(30),
  email varchar(50),
  alamat varchar(50),
  PRIMARY KEY (kode_verifikasi)
)
Tabel user
?
1
2
3
4
5
6
7
8
CREATE TABLE user (
  id int(3),
  username varchar(30),
  password varchar(30),
  email varchar(50),
  alamat varchar(50),
    PRIMARY KEY (id)
)
jadi pada saat pengunjung melakukan pendaftaraan anggotaan maka data-data yang di isikan akan ditampung kedalam database temp sebagai penampung sementara dan setelah pengunjung melakukan validasi data didalam tabel temp akan di import ke tabel user.
kita buat dahulu form registrasi pendaftaraan anggota
Daftar.php
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<html>
<head>
<title>Registrasi</title>
</head>
<body>
<form method=post action=<?php $_SERVER['PHP_SELF']; ?>>
<table>
<tr>
<td>Username</td><td> <input name="username" type="text"></td>
</tr>
<tr>
<td>Password</td>
<td> <input name="password" type="password"></td>
</tr>
<tr><td>Email</td>
<td><input name="email" type="text"></td>
</tr>
<tr>
<td>Alamat</td>
<td><textarea cols="20" rows="10" name="alamat"></textarea></td></tr>
<tr>
<td><input type="submit" name="daftar" value="Daftar"></td>
<td><input type="reset" value="Reset"></td>
</tr>
</table>
</form>
<?
include "koneksi.php";
if($_POST[daftar]){
//membuat kode random
$kode = md5(uniqid(rand()));
mysql_query("INSERT INTO tampung VALUES('kode','$_POST[username]',
'$_POST[password]','$_POST[email]','$_POST[alamat]')");
$kepada=$_POST[email];
$judul  ="Aktivasi Account";
$pengirim ="From : Ghuffar.com \n";
$pengirim  .="Content-type: text/html \r\n";
$isi  ="Klik link dibawah ini untuk aktivasi : <br>";
//alamat kita meletakan scrip proses.php
$isi .="<a href='http://localhost/proses.php?kode=$kode'>
http://localhost/proses.php?kode=$kode</a>";
mail($kepada,$judul,$pesan,$dari);
echo "Kami telah mengirim link konfirmasi,silahkan cek e-mail anda";
}
?>
</body>
</html>
selanjutnya kita buat script untuk memproses inputan
proses.php
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
include "koneksi.php";
$sql    = "SELECT * FROM temp WHERE kode_verifikasi='$_GET[kode]'";
$hasil  = mysql_query($sql);
$jumlah = mysql_num_rows($hasil);
// Apabila kode verifikasi ditemukan
if ($jumlah==1){
  $data=mysql_fetch_array($hasil);
  // Masukkan data ke tabel user
  $sql2="INSERT INTO user(username, password, email, alamat)
  VALUES('$data[username]', '$data[password]',
  '$data[email]', '$data[alamat]')";
  $hasil2=mysql_query($sql2);
  // Apabila data sudah sukses diinputkan ke tabel user
  if ($hasil2){
    echo "Account Anda telah diaktifkan";
    // Hapus data pendaftar tersebut di tabel temp
 mysql_query("DELETE FROM temp WHERE kode_verifikasi='$_GET[kode]'");
  }
}
else {
  echo "verifikasi gagal";
}
?>
Selanjutnya kita buat file koneksi,untuk mengubungkan script dengan database
koneksi.php
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$host="localhost";
$user="root";
$password="";
$database="daftar";
$koneksi=mysql_connect($host,$user,$password);
mysql_select_db($database,$koneksi);
//cek koneksi
if($koneksi){
//echo "berhasil koneksi";
}else{
echo "gagal koneksi";
}
?>
ok selesai,selamat mencoba... :)



source : http://ghuffar.com/article/php/membuat-email-konfirmasi-dengan-php

2 Komentar

  1. mantab .ditunggu min kiriman selanjutnya

    BalasHapus
  2. boss
    mohon penuturannya..
    kenapa ya?? database nya sih terisi datanya.. cuma emailnya ga masuk2 mohon kebaikan boss nya di jelaskan dong..

    BalasHapus
Lebih baru Lebih lama