Rabu, 26 Oktober 2011

Filter Buku Tamu dari Bad Word

submit.php
// daftar bad words

$badWords = array("sex","xxx","viagra","http","porn");

// membaca isian buku tamu dengan strip_tags()

$namaPengisi = strip_tags($_POST['nama']);
$emailPengisi = strip_tags($_POST['email']);
$isi = strip_tags($_POST['komentar']);

// membaca tanggal ketika pengisian

$tanggal = date("Y-m-d");

// asumsikan komentarnya tidak mengandung bad word

$status = "tak ada";

// cek keberadaan setiap bad word dalam komentar

for($i = 0; $i <= count($badWords)-1; $i++)
{
   if (!(strpos($isi, $badWords[$i]) == false))
   {
      // jika ditemukan sebuah bad word dalam komentar, maka status menjadi 'ada'
      // proses looping langsung dihentikan

      $status = "ada";
      break;
   }
}

// cek status akhir
// bila status bad word tidak ada, maka data isian tersimpan ke database
// bila ada, maka direject

if ($status == "tak ada")
{
   mysql_connect("localhost", "root", "root");
   mysql_select_db("contoh");
   $query = "INSERT INTO guestbook(nama, email, tanggal, komentar)
             VALUES ('$namaPengisi', '$emailPengisi', '$tanggal', '$isi')";
   $hasil = mysql_query($query);

   if ($hasil) echo "Terimakasih telah mengisi buku tamu";
   else echo "Pengisian buku tamu gagal";
}
else
{
   echo "Maaf komentar Anda mengandung kata-kata yang tidak sopan";
}

?>

Tidak ada komentar:

Posting Komentar