织梦CMS限制自定义表单24小时只能提交一次的方法
最近公司站被人恶意提交表单,一个小时内疯狂提交了500个,因为做了DedeCMS自定义表单提交后发送指定QQ邮箱,当天手机被轰炸个不听,QQ邮箱一直在那提示消息,这也算是给我一个警示,一定要做个每个漏洞的修复。
今天AB网站模版就来告诉大家如何设置每个IP24小时内只能提交一次表单:
打开/plus/diy.php文件,在里面找到如下代码(大概在第51行):
if(!is_array($diyform))
{
showmsg('自定义表单不存在', '-1');
exit();
}
在下面加上代码:
//检测游客是否已经提交过表单
if(isset($_COOKIE['VOTE_MEMBER_IP']))
{
if($_COOKIE['VOTE_MEMBER_IP'] == $_SERVER['REMOTE_ADDR'])
{
ShowMsg('您已经填写过表单啦','-1');
exit();
} else {
setcookie('VOTE_MEMBER_IP',$_SERVER['REMOTE_ADDR'],time()*$row
['spec']*3600,'/');
}
} else {
setcookie('VOTE_MEMBER_IP',$_SERVER['REMOTE_ADDR'],time()*$row
['spec']*3600,'/');
}