2012-05-27 93 views
1

我已經採取了reCAPTCHA的插件從this guygithub link的插件)CakePHP的2.0的reCAPTCHA插件總是錯

我輸入下面的代碼的形式在我看來:

[form creation] 
[table] 
[inputs] 
[/table] 
echo $this->Recaptcha->show(array('theme' => 'white')); 
echo $this->Recaptcha->error(); 

[/form] 

我ve遵循了建議的步驟,並且reCaptcha窗口正常顯示,但無論我在驗證碼中輸入什麼內容,它都不會被驗證,並且我始終會收到beforeValidate的「消息」字段(我已將其設置爲「您已輸入錯誤的信息「等)。

我什至不知道如何調試它,看看它在哪一點失敗。即使我只是將checkRecaptcha函數中的所有代碼替換爲「返回true」來嘗試跳過使用鍵的驗證,並且看看規則本身是否正確,它仍然保持不變,而且我通常沒有得到任何我閱讀的具體的incorrect-captcha-sol消息。

我是否正確地認爲我的控制器函數中需要的唯一代碼(假設我已經在控制器中包含組件和幫助程序)是Configure::load('Recaptcha.key');並且沒有進一步的手動驗證檢查?

(不幸的是我不能鏈接你我的整個項目,由於權利)

+0

我不知道這個傢伙的代碼,但你可以嘗試我們的:https://github.com/cakedc/recaptcha/tree /2.0 – burzum

回答

2

我有一個類似的問題。嘗試取出2響應和挑戰在組件磁力線,並覆蓋它們與這些:

$controller->$modelClass->set('recaptcha_response_field', 
$controller->request->data['recaptcha_response_field']); 
$controller->$modelClass->set('recaptcha_challenge_field', 
$controller->request->data['recaptcha_challenge_field']); 
+0

實際上做到了,謝謝 – Neyoex