我的應用程序http://www.tyro.in有用戶搜索時的搜索功能,該查詢將出現在最近的搜索區域。我的搜索表單使用GET方法。我認爲垃圾郵件發送者搜索垃圾郵件詞,並且垃圾郵件詞直接發佈在我的網站上。我不想將我的表單方法從GET更改爲POST。請提出任何方法來識別和防止垃圾郵件查詢。如何防止垃圾郵件搜索
預先感謝您。
我的應用程序http://www.tyro.in有用戶搜索時的搜索功能,該查詢將出現在最近的搜索區域。我的搜索表單使用GET方法。我認爲垃圾郵件發送者搜索垃圾郵件詞,並且垃圾郵件詞直接發佈在我的網站上。我不想將我的表單方法從GET更改爲POST。請提出任何方法來識別和防止垃圾郵件查詢。如何防止垃圾郵件搜索
預先感謝您。
試試這個:
一個隱藏的輸入字段添加到您的搜索表單,並且還能夠爲用戶的會話。發佈表單時,將輸入字段值與會話進行匹配。垃圾郵件搜索將會丟失這個值,因爲他沒有會話。
$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
}
你可以過濾掉不適合你的內容搜索。這樣,拼寫錯誤(以及總是發生的異域搜索)也不會在「最近的搜索」中顯示。
不顯示最近的搜索? – 2010-12-23 08:00:08