به گفته نویسنده ، این ماژول 100% مانع از قرار دادن اسپمها:
1. در ارسال نظرات
2. در ارسال مطالب
3. هنگام عضویت
میشه و در قسمت مدیریت اونها رو نمایش میده .
1. فایل رو دانلود و در مسیر مورد نظر قرار بدید .
2. وارد phpmyadmin بشید و در sql کد زیر رو اجرا کنید :
CREATE TABLE `dle_hte_antispam` (
`id_spam` int(11) NOT NULL auto_increment,
`ip` varchar(20) NOT NULL default '',
`coockie` text NOT NULL,
`dt` datetime NOT NULL default '0000-00-00 00:00:00',
`type` int(1) NOT NULL default '0',
`post` text NOT NULL,
PRIMARY KEY (`id_spam`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=9;
3. فایل engine/modules/addnews.php رو باز کنید :
کد زیر رو پیدا کنید :
if( ! defined( 'DATALIFEENGINE' ) ) {
die( "Hacking attempt!" );
}
$allow_addnews = true;
بعد از کد بالا . کد زیر رو قرار بدید :
$stop = "";
if (($_POST['antispam']!='as')&&($_POST['title']!=''))
{
$stroka='';
foreach ($_POST as $value)
{
$stroka .= " $value |||";
}
$stop .= 'Block Spam! If youre not spammers, please contact aministratsiey portal!';
$db->query("INSERT INTO dle_hte_antispam (ip, coockie , dt, type, post) VALUES ('".$_SERVER['REMOTE_ADDR']."','".$_SERVER['HTTP_COOKIE']."',CURRENT_TIMESTAMP,'1','".$stroka."')");
}
در همین فایل کد زیر رو پیدا و حذف کنید :
$stop = "";
در همین فایل کد زیر رو پیدا کنید :
$tpl->copy_template = $categoryfilter . $script . $tpl->copy_template . "<input type=\"hidden\" name=\"mod\" value=\"addnews\" />{$random_key}</form>";
به جاش کد زیر رو قرار بدید :
$tpl->copy_template = $categoryfilter . $script . $tpl->copy_template . "<input type=\"hidden\" name=\"mod\" value=\"addnews\" /><input type=\"hidden\" name=\"antispam\" value=\"as\" />{$random_key}</form>";
4. فایل engine/modules/addcomments.php رو باز کنید :
کد زیر رو پیدا کنید :
if( ! defined( 'DATALIFEENGINE' ) or $config['allow_comments'] != "yes" ) {
die( "Hacking attempt!" );
}
die( "Hacking attempt!" );
}
بعد از کد بالا، کد زیر رو قرار بدید :
if ($_POST['antispam']!='as')
{
$stroka='';
foreach ($_POST as $value)
{
$stroka .= " $value |||";
}
$db->query("INSERT INTO dle_hte_antispam (ip, coockie , dt, type, post) VALUES ('".$_SERVER['REMOTE_ADDR']."','".$_SERVER['HTTP_COOKIE']."',CURRENT_TIMESTAMP,'2','$stroka')");
$stop[] = $lang['news_info_3'];
$CN_HALT = TRUE;
}
{
$stroka='';
foreach ($_POST as $value)
{
$stroka .= " $value |||";
}
$db->query("INSERT INTO dle_hte_antispam (ip, coockie , dt, type, post) VALUES ('".$_SERVER['REMOTE_ADDR']."','".$_SERVER['HTTP_COOKIE']."',CURRENT_TIMESTAMP,'2','$stroka')");
$stop[] = $lang['news_info_3'];
$CN_HALT = TRUE;
}
5. فایل engine/ajax/js_edit.js رو باز کنید ( میتونید از فایلی که در پوشه developer قرار داده شده استفاده کنید و به جای این فایل در پوشه ajax قرار بدید ) و یا اینکه دستور زیر رو انجام بدید :
کدزیر رو پیدا کنید :
function doAddComments()
در زیر اون به دنبال کد زیر بگردید :
var varsString = "post_id=" + form.post_id.value;
بعد از کد بالا ، کد زیر رو قرار بدید :
dle_comments_ajax.setVar("antispam", dle_comments_ajax.encodeVAR(form.antispam.value));
6. فایل engine/modules/show.full.php رو باز کنید :
کد زیر رو پیدا کنید :
<input type=\"hidden\" name=\"subaction\" value=\"addcomment\" />{$hidden}
کد زیر رو در بالای کدی که در بالا هست قرار بدید :
<input type=\"hidden\" name=\"antispam\" value=\"as\" />
7. فایل engine/modules/register.php رو باز کنید :
کد زیر رو پیدا کنید :
<input name=\"submit_reg\" type=\"hidden\" id=\"submit_reg\" value=\"submit_reg\" />
بعد از کد بالا ، کد زیر رو قرار بدید :
<input name=\"antispam\" type=\"hidden\" value=\"as\" />
در همین فایل کد زیر رو پیدا کنید :
if( $doaction == "validating" and ! $stopregistration ) {
کد زیر رو در بالای کدی که در بالا هست قرار بدید :
if( $doaction == "validating")
if ($_POST['antispam']!='as')
{
$stroka='';
foreach ($_POST as $value)
{
$stroka .= " $value |||";
}
$db->query("INSERT INTO dle_hte_antispam (ip, coockie , dt, type,post) VALUES ('".$_SERVER['REMOTE_ADDR']."','".$_SERVER['HTTP_COOKIE']."',CURRENT_TIMESTAMP,'3','".$stroka."')");
msgbox( $lang['all_info'], "Say no spam!" );
$stopregistration = TRUE;
}
8. فایل admin.php رو باز کنید :
کد زیر رو پیدا کنید :
'addnews' => 'user',
بعد از کد بالا ، کد زیر رو قرار بدید :
'antispam' => 'admin',
9. فایل engine/inc/options.php رو باز کنید :
کد زیر رو پیدا کنید :
$options['others'] = array (
بعد از کد بالا ، کد زیر رو قرار بدید :
array (
'name' => "آنتی اسپم",
'url' => "$PHP_SELF?mod=antispam",
'descr' => "anti-spam filter",
'image' => "tools.png",
'access' => "1"
),
'name' => "آنتی اسپم",
'url' => "$PHP_SELF?mod=antispam",
'descr' => "anti-spam filter",
'image' => "tools.png",
'access' => "1"
),
انشا الله که کار کنه