Membatasi Kata Kotor Pada Form Di PHP

PHP Elephant LOGO

Membatasi kata – kata yang tidak pantas di website memang perlu. Apalagi website sejenis forum, pasti sang pemilik tidak menginginkan penggunanya memposting kata kata kotor. Ada banyak hal, pemilik website membatasi kata kata, bahkan tidak hanya kata kata kotor saja.

Kali ini akan Saya bagikan PHP Script untuk membatasi kata kotor (badwords) yang ada di form submit. Jika biasanya website sejenis forum membatasi badword seperti disensor dengan tanda bintang (*), tapi yang akan Saya bagikan berbeda, yaitu ketika pengguna menuliskan kata kata yang telah di filter, maka akan menampilkan alert error.
Berikut ini scriptnya, dan sedikit penjelasan ada dibawahnya.

form.html

<form action="validasi.php" method="POST">
<input type="text" name="teks">
<input type="submit" value="Validasi">
</form>

validasi.php

function validasi($string,$banned_words) {
foreach($banned_words as $banned_word) {
if(stristr($string,$banned_word)){
return false;
}
}
return true;
}

$banned_words = array('badword','badword2','badword3','badword4','badword5','badword6','badword7');

$teks = $_POST['teks'];

if (!validasi($teks,$banned_words)) {
echo '<script type="text/javascript">
alert("Text you\'re input is blocked by system");
window.location="http://google.com";
</script>';
}else{
echo 'Text valid';
}
?>

Penjelasan

form.html – Form input yang mengarah ke validasi.php berbentuk data POST.

validasi() – Fungsi terdapat di validasi.php untuk memisahkan badword.

$banned_word – Untuk memfilter kata kata yang tidak diinginkan dan berbentuk array. Silahkan ganti teks seperti pada contoh.

$teks – Untuk mengambil data POST dari form

if else – Memanggil dari fungsi validasi(). Untuk memisahkan badword dan menampilkan alert.

Hasil dari script diatas, jika pengguna menuliskan kata yang telah difilter, maka akan menampilkan “Text you’re input is blocked by system” dan akan dialihkan ke website google. Sedangkan jika pengguna tidak menuliskan kata yang difilter akan menampilkan “Text valid“.

Kamu dapat mengembangkannya supaya dapat digunakan pada websitemu dan sebenarnya yang diperlukan dari script diatas hanyalah fungsi validasi() saja.
Jika ada yang ingin ditanyakan silahkan berkomentar. 🙂

Semoga bermanfaat dan Selamat mencoba

2 comments
  1. Wah mantap master, tp gimana cara agar notif your post bloced by sistem di ganti your post “text keblokir” di larang dalam pesan?

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *