Joomla管理登录自定义错误

时间:2012-12-22 09:23:43

标签: php joomla joomla2.5 recaptcha

我在joomla admini登录部分使用Google reCAPTCHA,验证工作正常。

将加密验证添加到administrator/components/com_login/models/login.php

 $privatekey = "myprivatekey";
 $resp = recaptcha_check_answer (
        $privatekey,
        $_SERVER["REMOTE_ADDR"],
        JRequest::getVar('recaptcha_challenge_field', '', 'method', 'recaptcha_challenge_field'),
        JRequest::getVar('recaptcha_response_field', '', 'method', 'recaptcha_response_field')
    );

 if (!$resp->is_valid) {
    //die('Incorrect Captcha...');
 }else{     
    $credentials = array(
        'username' => JRequest::getVar('username', '', 'method', 'username'),
        'password' => JRequest::getVar('passwd', '', 'post', 'string', JREQUEST_ALLOWRAW)
    );
    $this->setState('credentials', $credentials);
 }

我应该使用什么代替//die('Incorrect Captcha...');来输出无效的验证码?登录页面出错?

Error Sample Image

2 个答案:

答案 0 :(得分:3)

试试这个 -

$app = JFactory::getApplication();
$app->enqueueMessage('Incorrect Captcha...', 'error');
$app->redirect(JURI::base());

答案 1 :(得分:2)

当输出无效时,您可以使用JError来显示错误。

例如:

JError::raiseError( JText::_( 'Invalid Captcha' ));

有关更多方法,您可以看到此JError