Sonny Soleman, Monday, 26 May 2008 20:33
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 |
|
|
|
|
|
Only registered users can write comments!
Powered by !JoomlaComment 3.26
3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."
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
Artikel
We have 660 guests and 1 member online





