找不到致命错误类'JError'

时间:2013-06-08 06:05:17

标签: php joomla

我的网站在2-3周之前运行正常,现在它给我一个错误:joomla致命错误类'JError'未找到。 当我输入URL时,它显示以下错误消息... 致命错误:在第565行的/home/dcmops/public_html/gu/libraries/joomla/factory.php中找不到“JError”类

我甚至无法看到管理标签,它也显示相同的错误。 任何人都可以指导我这个问题...... ??

代码@第565行如下

if ( JError::isError($db) ) {
            header('HTTP/1.1 500 Internal Server Error');
            jexit('Database Error: ' . $db->toString() );
        }

        if ($db->getErrorNum() > 0) {
            JError::raiseError(500 , 'JDatabase::getInstance: Could not connect to database <br />' . 'joomla.library:'.$db->getErrorNum().' - '.$db->getErrorMsg() );
        }

        $db->debug( $debug );
        return $db;

谢谢&amp;问候, 拉胡

1 个答案:

答案 0 :(得分:0)

如果您使用Joomla 1.5,这将正常工作。否则,您需要使用标准的例外。

您可以使用常用功能自动处理所有Joomla版本。

例如:

defined('APP_VERSION') or (version_compare(JVERSION,'1.6.0','ge') ? define('APP_VERSION', 2.5) : define('APP_VERSION', 1.5));

public static function throw_error($code, $msg){

  if(APP_VERSION == '1.5'){

    JError::raiseError( $code, $msg);
  }else{

    throw new Exception($msg, $code);
  }
}

现在你可以像JError一样抛出异常。

e.g。

SomeClassName::throw_error(500, 'An exception occurred');