Home Tutorial Blok Link / URL spam dan Sensor kata di AJAX Shoutbox module
xny
E-mail
Blok Link / URL spam dan Sensor kata di AJAX Shoutbox module
Tutorial
Sonny Soleman, Monday, 26 May 2008 20:33
Hallo, salam kenal.

Mungkin di atara para id-joomlers sudah pernah menggunakan module / component AJAX Shoutbox ?
Asyik juga module ini, mampu membuat website kita menjadi lebih interaktif, sesuai banget dengan prinsip dasar web versi 2.0

Tapi, ternyata AJAX Shoutbox ini punya beberapa kelemahan :
a. Tidak dapat memblok spam / iklan dalam bentuk link / url maupun sejenisnya
b. Tidak dapat secara otomatis melakukan sensor kata2x kasar / jorok atau sejenisnya.


Nah, berikut ini, saya mencoba berbagi info bagaimana memodifikasi module Shoutbox ini sehingga bisa mengeliminasi kelemahan di atas.
Jika anda telah menginstall module / component AJAX Shoutbox ini ke dalam CMS joomla anda,

masuklah ke folder / direktori : modules

Dengan text editor seperti Dreamweaver, anda buka / open file yg bernama : mod_shoutbox.php


Scroll tampilan text editor anda sampai menemukan syntax berikut ini :
// Register globals - Thanks Karan et Etienne
$jal_lastID    = isset($_GET['jal_lastID']) ? $_GET['jal_lastID'] : "";
$jal_user_name = isset($_POST['n']) ? $_POST['n'] : "";
$jal_user_url  = isset($_POST['u']) ? $_POST['u'] : "";
$jal_user_text = isset($_POST['c']) ? $_POST['c'] : "";
$jalGetChat    = isset($_GET['jalGetChat']) ? $_GET['jalGetChat'] : "";
$jalSendChat   = isset($_GET['jalSendChat']) ? $_GET['jalSendChat'] : "";



Selanjutnya anda copy & paste fungsi berikut ini, pada lokasi tepat sesudah sytax di atas :

function sensorkata($kalimat) {
   $linkterlarang = array(".com","www","http","script","href","div","frame");
   $kataterlarang = array("anjing","bangsat","monyet","goblok","tolol","bodoh","tahi","tai","perek","banci","gila","pantat","pelacur","gigolo","kerok", "ndeso","asu",
   "kontol","memek","berak","boker","pipis","kencing","bloon");
   $boleh = true;
   for ($i = 0; $i<count($linkterlarang); $i++) {
       if (preg_match("/".$linkterlarang[$i]."/i", mysql_real_escape_string($kalimat))) {$boleh = false;}
   }
   for ($i = 0; $i<count($kataterlarang); $i++) {
       if (preg_match("/".$kataterlarang[$i]."/i", mysql_real_escape_string($kalimat))) {$boleh = false;}
   }
   return $boleh;
}



Selanjutnya scroll ke bawah lagi text editor anda, sampai menemukan fungsi :

function jal_addData($jal_user_name,$jal_user_text,$jal_user_url)

Kembali scroll ke bawah sampai menemukan sytax / perintah berikut ini :

mysql_query("INSERT INTO ".$prefix."liveshoutbox (time,name,text,url) VALUES ('".time()."','".mysql_real_escape_string($jal_user_name)."','".mysql_real_escape_string($jal_user_text)."','".mysql_real_escape_string($jal_user_url)."')", $conn);


Ubah / replace perintah tersebut menjadi seperti ini (copy & paste) :

if (sensorkata(mysql_real_escape_string($jal_user_text))==true) {
   mysql_query("INSERT INTO ".$prefix."liveshoutbox (time,name,text,url) VALUES ('".time()."','".mysql_real_escape_string($jal_user_name)."','".mysql_real_escape_string($jal_user_text)."','".mysql_real_escape_string($jal_user_url)."')", $conn);
}



Simpan / Save perubahan pada text editor tersebut.
Sekarang anda coba Shoutbox tersebut..

Hasilnya anda telah mendapatkan Shoutbox yang bebas iklan / spam dan bebas kata2x "kasar/jorok".

Tapi bila ada kata2x kasar yang masih lolos dari sensor, maka anda bisa memodifikasi variabel :

$kataterlarang

pada fungsi : function sensorkata($kalimat)

dengan cara menambahkan kata2x yang lolos sensor tersebut ke dalam data Array dari variable $kataterlarang.

Mudah bukan ??
Semoga Bermanfaat
Comments
Search
Shoutbox ada kelemahan lain...
djoko 2008-08-27 15:47:02

Ide bagus... btw sy pernah ada pengunjung walau bukan anggota website tapi dia
bisa kirim pesan shoutbox terus2an mpe sy jengkel,kuhapus...eee dia kirim pesan
promosi lg. Gitu terus Akhirnya kublok aja IPnya via CPanel,baru berhenti
dia. tapi ternyata dia ganti IP juga... Gimana y cara ngatasi ini ???
smo ajax shoutbox
kepedihan 2008-08-27 23:49:02

cb pk smo ajax shoutbox,ada menu sensor di component meski tdk ada menu
ipblocker...
tambahan
kepedihan 2008-08-27 23:53:02

ato bs pake mosets shout it...pake itu semua ip pengunjung terpantau di
front-end. untuk block bs memakai mod+com ipblocker atau plugin/mambot ipfilter.

silahkan sendmail ke saya bila membutuhkan...
semoga bisa membantu...
Mau bgt mas...
djoko 2008-08-28 02:34:06

Wah mau banget mas... Tks sebelumnya.
:zzz
ajax shout box beta 2 joomla 1.5
alphin 2008-08-28 08:27:08

pak tolong kalau buat ajax shout box beta 2 joomla 1.5 caranya gimana caranya
Only registered users can write comments!

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

Last Updated on Wednesday, 10 June 2009 17:02  

JUG Indonesia

Id-joomla.com adalah situs resmi Joomla User Group (JUG) Indonesia dan Joomla Translation Team

Download Terjemahan Joomla terakreditasi dari JoomlaCode dan laporkan bugs, ide dan saran nya di Sub Forum Hanacaraka

Login

Web
ID-Joomla
Banner
Dengarkan siaran radio ID-Joomla   Chatroom ID-Joomla   Facebook Page ID-Joomla
We have 660 guests and 1 member online
Joomla! is the trademark of Open Source Matters, Inc in the United States and other countries. The Joomla! name is used under a limited license granted by Open Source Matters.
Id-joomla.com is not affiliated with or endorsed by Open Source Matters or the Joomla! Project