在joomla K2中使用php插件安装reCaptcha
我试图在K2前端提交表单上实现reCaptcha。我下载了PHP库,安装了它,可以成功地以提交形式显示capcha图像,但最后一步让我感到困惑。我需要将这些代码放到动作php文件中:在joomla K2中使用php插件安装reCaptcha,php,joomla,recaptcha,joomla-k2,Php,Joomla,Recaptcha,Joomla K2,我试图在K2前端提交表单上实现reCaptcha。我下载了PHP库,安装了它,可以成功地以提交形式显示capcha图像,但最后一步让我感到困惑。我需要将这些代码放到动作php文件中: <?php require_once(JPATH_SITE.'/libraries/recaptcha/recaptchalib.php'); $privatekey = "MY PRIVATE KEY"; $resp = recaptcha_check_answer ($privatekey,
<?php
require_once(JPATH_SITE.'/libraries/recaptcha/recaptchalib.php');
$privatekey = "MY PRIVATE KEY";
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
if (!$resp->is_valid) {
// What happens when the CAPTCHA was entered incorrectly
die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." .
"(reCAPTCHA said: " . $resp->error . ")");
} else {
alert(0);
}
?>
如果您在管理部分工作,您可以在item controller的保存功能中验证验证码。 在这个文件中,检查下面的函数并添加代码
function save() {
JRequest::checkToken() or jexit('Invalid Token');
//add library and captcha validation code here
$model = & $this->getModel('item');
$model->save();
}
最好检查或尝试插件
希望这也会有帮助-
(一)
2) thx u对于答案,不幸的是它不起作用,在失败之后,我删除了保存功能,并尝试在没有它的情况下保存文章,它成功地保存了文章,这很奇怪……对不起,我错过了“管理部分”部分…那么前端用户的保存功能在哪里呢?这里是前端/components/com_k2/controllers/item.phpIrfan THX,您是我的救世主,即使您的第二个位置也有错误。我把代码放到第52行的administrator\components\com_k2\models\item.php中,它就像一个符咒:))
function save() {
JRequest::checkToken() or jexit('Invalid Token');
//add library and captcha validation code here
$model = & $this->getModel('item');
$model->save();
}