Error: Call to undefined function recaptcha_check_answer() in CakePHP 2.5.1 (PHP 5.3.28)
Error: Call to undefined function recaptcha_check_answer() in CakePHP 2.5.1 (PHP 5.3.28)
我正在尝试在我的 CakePHP 应用程序的登录和注册页面中添加 google 的 reCAPTCHA。但它显示以下错误:
致命错误
错误:调用未定义函数 recaptcha_check_answer()
文件:C:...\app\Controller\UsersController.php
在 UsersController 中,错误消息中指示了以下行。
$recaptchaResp = recaptcha_check_answer(Configure::read("Recaptcha.privateKey"),
$_SERVER["REMOTE_ADDR"],
$this->params['form']["recaptcha_challenge_field"],
$this->params['form']["recaptcha_response_field"]);
谁能告诉我这段代码有什么问题吗?它是否缺少像 recaptchalib 这样的文件?如果是这样,我在哪里可以获得 CakePHP 2.5.1 的这个库?
cakephp 中有 google reCaptcha 插件。您可以从 Here
下载
要使用 recaptcha 插件,需要在您的 /app/Config/bootstrap.php
文件中包含以下两行。
Configure::write('Recaptcha.publicKey', 'public-api-key');
Configure::write('Recaptcha.privateKey', 'private-api-key');
将使用 recaptcha 的控制器需要包含 Recaptcha 组件。通过包含该组件,帮助器会自动提供给您的视图。
public $components = array('Recaptcha.Recaptcha');
在视图中只需调用助手 display() 方法来呈现 recaptcha 输入:
echo $this->Recaptcha->display();
要检查结果,只需在您的控制器中执行如下操作:
if ($this->request->is('post')) {
if ($this->Recaptcha->verify()) {
// verified
} else {
// display the error
}
}
我正在尝试在我的 CakePHP 应用程序的登录和注册页面中添加 google 的 reCAPTCHA。但它显示以下错误:
致命错误
错误:调用未定义函数 recaptcha_check_answer()
文件:C:...\app\Controller\UsersController.php
在 UsersController 中,错误消息中指示了以下行。
$recaptchaResp = recaptcha_check_answer(Configure::read("Recaptcha.privateKey"),
$_SERVER["REMOTE_ADDR"],
$this->params['form']["recaptcha_challenge_field"],
$this->params['form']["recaptcha_response_field"]);
谁能告诉我这段代码有什么问题吗?它是否缺少像 recaptchalib 这样的文件?如果是这样,我在哪里可以获得 CakePHP 2.5.1 的这个库?
cakephp 中有 google reCaptcha 插件。您可以从 Here
下载要使用 recaptcha 插件,需要在您的 /app/Config/bootstrap.php
文件中包含以下两行。
Configure::write('Recaptcha.publicKey', 'public-api-key');
Configure::write('Recaptcha.privateKey', 'private-api-key');
将使用 recaptcha 的控制器需要包含 Recaptcha 组件。通过包含该组件,帮助器会自动提供给您的视图。
public $components = array('Recaptcha.Recaptcha');
在视图中只需调用助手 display() 方法来呈现 recaptcha 输入:
echo $this->Recaptcha->display();
要检查结果,只需在您的控制器中执行如下操作:
if ($this->request->is('post')) {
if ($this->Recaptcha->verify()) {
// verified
} else {
// display the error
}
}