Rumah > Artikel > pembangunan bahagian belakang > Discuz论坛防止广告机的方法
source/include/post/post_newreply.php:在第406行
source/include/post/post_newthread.php:第125行
添加内容:
//如果出验证码,则限制发帖长度和内容。
if($seccodecheck){
if(strlen($message) > 40){
showmessage('新注册用户帖子长度限制为20个汉字以内!');
}elseif(preg_match("/\d{5,}/", $message)){
// 这里匹配的是数字,主要是QQ和手机号。
showmessage('系统认为你发表的内容为广告,请重新编辑!');
}elseif(stripos($message, '.net') !== FALSE
|| stripos($message, '.com') !== FALSE
|| stripos($message, '.org') !== FALSE
|| stripos($message, '.cn') !== FALSE
|| stripos($message, '.cc') !== FALSE
|| stripos($message, 'qq') !== FALSE
// 下面这个匹配img标签是很多广告机用IMG伪造个签名然后把广告加里面。
|| stripos($message, '[img]') !== FALSE){
showmessage('系统认为你发表的内容为广告,请重新编辑!');
}
}
我自己的是电影论坛,用户回复的一般都是谢谢楼主楼主好人之类的东西,其他的论坛可以适当放宽下内容长度限制。
加上了这个修改之后,我的论坛每天的牛皮癣从几十降到了0。