Строгие стандарты PHP: нестатический метод Fatal::dbError()

Я исправляю ошибку в PHP и не знаю, как ее решить. У меня нет никаких знаний PHP.

Вот код:

function _act($sql) {
   if (!$this->_link) {
      Fatal::internalError('Tried to make database query before connection.');
   }

   $r = mysql_query($sql, $this->_link);

   if ($r === false) {
      Fatal::dbError($sql, "Database query failed", mysql_error());
   }
   return $r;
 }

В журнале ошибок получаю следующее:

[24-Jan-2013 13:25:38 America/Denver] Строгие стандарты PHP: нестатический метод Fatal::dbError() не следует вызывать статически, предполагая, что $this из несовместимого контекста в /home1/flcclear/public_html/Library /classes/Query.php в строке 91

Я попытался сделать это вызовом объекта с помощью $r->mysql_error();, но это вызвало другую ошибку. Я не пытаюсь переписать этот код, просто пытаюсь исправить ошибки для начальной/средней школы, что означает отсутствие денег, добровольное время.

Заранее спасибо.


person user2009054    schedule 24.01.2013    source источник
comment
но сообщение об ошибке относится к Fatal::dbError, а не к mysql_error.   -  person Guilherme Nascimento    schedule 25.01.2013
comment
Не используйте больше mysql-расширение. Читать php.net/en/mysql-connect   -  person KingCrunch    schedule 25.01.2013
comment
@KingCrunch вопрос не в том, для чего нужен вопрос, вопрос о неудаче, добавление комментариев к вашему ответу может быть полезным, но сначала уступите место, чтобы он мог решить проблему. Спасибо.   -  person Guilherme Nascimento    schedule 25.01.2013


Ответы (2)


сделать Fatal::internalError,Fata::dbError (а также другие методы, которые вы используете, такие как "Fatal::methodName") статическими

пример :

class Fatal
{
    public static dbError($sql,$message){
    //method body
    }
}
person Tufan Barış Yıldırım    schedule 24.01.2013

но сообщение об ошибке относится к Fatal::dbError, а не к mysql_error.

Fatal::dbError это класс, предназначенный для вас? Попробуй это:

Class Fatal{
  ...
  static public dbError(...){...}
  ...
}
person Guilherme Nascimento    schedule 24.01.2013