Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在joomla K2中使用php插件安装reCaptcha_Php_Joomla_Recaptcha_Joomla K2 - Fatal编程技术网

在joomla K2中使用php插件安装reCaptcha

在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,

我试图在K2前端提交表单上实现reCaptcha。我下载了PHP库,安装了它,可以成功地以提交形式显示capcha图像,但最后一步让我感到困惑。我需要将这些代码放到动作php文件中:

<?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();
}