Maison > Article > développement back-end > 防止PHPWIND论坛被注册机恶意注册发广告的方法_PHP教程
最近我的论坛老有注册机恶意注册,并且发布广告信息,搞的很烦,所在想了些办法来防止恶意注册。下面是一些方法:
方法1:更改注册表单NAME(最有效,但是要有一些PHP和MYSQL方面的知识才行。)
改动注册表单填入内容的NAME,这需要和数据表相配合,MYSQL表单关键字也得改。
方法2:输入网站注册问题的答案
改两个文件,一个是register.htm,另一个是register.php
第一步,打开论坛template/wind/下的register.htm,当然,这是默认的风格模板,如果你模板改了,那就到你改动后的模板的名字下找这个文件。
先找个地方,建议放在这个上面:
编辑—查找
在这句上面加以下几句:是出个问题,当然,问题的具体内容可以自己修改
保存,上传到空间替换原文件
第二步:打开论坛主目录下的register.php
编辑-查找
$db->update("INSERT INTO pw_members (username, password,email,publicmail,groupid,memberid,icon,gender,regdate,signature,introduce,oicq,icq,site,location,bday,receivemail,yz,signchange) VALUES
在这句话的上面添加几句:是检测看回答问题的答案是否正确,具体答案自己根据自己的问题指定
if($manianling != 50) {
Showmsg("老妈几岁都不关心的人,去死吧!!","javascript:history.back()");
}
保存,上传上传到空间替换原文件.
方法3:更改register.php的名字
就是改动注册页面的文件名,比如说把register.php改成r.php什么的。但有一点得注意,所有链接的register.php的页面都必须改成r.php,否则会变成白板的哟。
这是没有办法的办法,修改多,影响升级和论坛的当前运行,但是绝对有效
先把register.php改成你自己想要的名字
修改开始:
查register.php换成你改的名字如:welcome.php
login.php
global.php 2处
然后到template/wind(所有的模板只要有下面的文件,都要修改)8处修改!
faq.htm
login.htm
lang_email.php
lang_other.php
register.htm 3处simple_index.htm
simple_read.htm
simple_thread.htm
中查找
register.php
更换为你修改后的register.php名字。比如welcome.php
此方法不需要设置什么附加信息!
方法4:输入今日日期
1、修改register.php(register.php就在主目录下)
找到:
$db->update("INSERT INTO pw_members (username, password, email,publicmail,groupid,memberid,icon,gender,regdate,signature,introduce,oicq,icq,site,location,bday,receivemail,yz,signchange) VALUES
上面加上(中文自己修改):
if($nowday != $nowday1) {
Showmsg("日期没输正确.你不会忘了今天是几号了吧?","javascript:history.back()");
}
找到:
@include_once(D_P.data/bbscache/inv_config.php);
下面加上:
$nowday1 = gmdate("d", $timestamp + $timeoffset * 3600);
$nowday2 = gmdate("m月d日", $timestamp + $timeoffset * 3600);
2、修改register.htm(register.htm就在目录/template/wind/register.htm或其它风格目录)
找到:
下面添加(中文自己修改):
期是12月04日就填04
color="#FF0000">$nowday1
快把它输入到左边文本框吧(忽略凌晨时差问题)友情提醒:请删除以前机器人注册的id,有好多机器人都是以前注册了不发帖,然后到规定日期狂发的,如果发现类似的ID,如利剑*等,请删除吧,留着就是隐患。
方法5:后台添加防自动注册机验证码
1. 打开template/admin/settings.htm
查找
在后面添加
2. 打开admin/settings.php
查找
if ($reg[regmaxname]>15){
adminmsg(illegal_username);
}
在后面添加
$reg[autoreg]=str_replace(" ","",trim($reg[autoreg]));
3. 打开template/wind/register.htm
查找
在后面添加
color=red>$rg_autoreg
4. 打开register.php文件
查找
if(!$rg_rglower){
for ($asc=65;$asc
if (strpos($regname,chr($asc))!==false){
Showmsg(username_limit);
}
}
}
在后面添加
if($rg_autoreg!="" && $autoreg!=$rg_autoreg){
showmsg(对不起,防自动注册机验证未通过!);
}
完成
希望对大家有些帮助。