如何防止垃圾邮件搜索

时间:2010-12-23 07:56:46

标签: spam-prevention

我的应用http://www.tyro.in在用户搜索时具有搜索功能,该查询将出现在最近的搜索区域中。我的搜索表单使用GET方法。我认为垃圾邮件发送者会搜索垃圾邮件,垃圾邮件会直接发布在我的网站上。我不想将我的表单方法从GET更改为POST。请建议任何方法来识别和防止垃圾邮件查询。

提前谢谢。

2 个答案:

答案 0 :(得分:0)

试试这个:

在搜索表单中添加隐藏的输入字段,并添加到用户的会话中。发布表单时,将输入字段值与会话匹配。垃圾邮件搜索将缺少此值,因为他没有会话。

$hiddenvalue= md5(rand(0,1000));

//only fill session if we're not coming from a search action
if(count($_GET) == 0) {
    $_SESSION["hidden"]= $hiddenvalue;
}


<input type="hidden" name="secret" value="$hiddenvalue">

然后在GET之后:

if($_GET["secret"] == $_SESSION["hidden"]) {
    //continue search
}

答案 1 :(得分:0)

您可以过滤不符合您内容的搜索。这样,拼写错误(以及经常发生的异国情调搜索)也不会在“最近搜索”下显示。