1

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;
 }

エラーログに次のように表示されます。

[2013 年 1 月 24 日 13:25:38 アメリカ/デンバー] PHP の厳格な標準: 非静的メソッド Fatal::dbError() を静的に呼び出すべきではありません。 /classes/Query.php 91 行目

オブジェクト呼び出しにしようとしまし$r->mysql_error();たが、これにより別のエラーが発生しました。私はこのコードを書き直そうとしているのではなく、小中学校のエラーを修正しようとしているだけで、お金やボランティアの時間はありません。

前もって感謝します。

4

2 に答える 2

1

Fatal::internalError、Fata::dbError (「Fatal::methodName」など、使用している他のメソッドも) static にする

例 :

class Fatal
{
    public static dbError($sql,$message){
    //method body
    }
}
于 2013-01-24T21:36:58.283 に答える
0

しかし、エラー メッセージはFatal::dbErrorではなく を参照していmysql_errorます。

Fatal::dbErrorあなたのために設計されたクラスですか?これを試して:

Class Fatal{
  ...
  static public dbError(...){...}
  ...
}
于 2013-01-24T21:37:19.473 に答える