2013-02-02 68 views
0

我已經實現了前端的形式,使未註冊用戶發佈在我的網站。驗證碼驗證添加到我的自定義表單張貼前端

一切都在完美的工作,我唯一的問題是與驗證碼的實現。

所有驗證碼的解決方案,我發現需要把一些文件外的形式操作。但我的表單有這樣的語法:

<form action=""> 

我不知道該怎麼辦?如果我將該文件放入動作字段,則無法再添加該文章。如何將驗證碼的驗證碼與表單相同?還是更好的解決方案?

非常感謝!

回答

1

如果你知道PHP以及使用Zend框架。我將它用於我的所有驗證碼。查看http://framework.zend.com/manual/2.0/en/modules/zend.captcha.operation.html瞭解更多信息。它通常與http://framework.zend.com/manual/2.0/en/modules/zend.form.quick-start.html#zend-form-quick-start組合使用,因此您可能想要熟悉這兩篇文章。

此外,我不知道您獲得了多少流量,但是如果您是流量較低的網站,那麼可以使用驗證碼替代方法,這樣可以很好地工作,並且不會因翻譯文本的難度而嚇倒用戶。例如,用戶可以解決數學問題,如2加2。而機器人將無法解決這個問題,或者您可以使用一個空白的隱藏字段,如果機器人填充它,則用戶無法註冊。

編輯:嗯,你最好的選擇,然後是使用這些替代品。他們爲99.9%的機器人工作,我使用它們時從未遇到問題,特別是在組合時。添加類似

<input type="hidden" value="" name="blah" /> 

,然後測試該窗體在PHP與

if (strlen($_POST["blah"]) > 0) 
{ 
    die(); 
} 

,並應保留了大部分的機器人。如果您需要更多安全性,請添加類似內容

<p>Add two plus two</p> 
<input type="text" name="check" /> 

和PHP

if ($_POST["check"] != 4) 
{ 
    die(); 
} 

這應該爲你工作。

+0

嗯,感謝您的幫助。這對我來說太難了,我需要尋求一些幫助。 –

+0

看看我的編輯。 – Alex

+0

謝謝,我在一開始我不會有很多交通。我將執行這個蜜罐,然後改變它。謝謝 –