我正在解决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::d bError() 不应静态调用,假设$this来自/home1/flcclear/public_html/Library/classes/Query.php 第 91 行的不兼容上下文
我试图用$r->mysql_error();
使其成为对象调用,但这导致了不同的错误。我不是想重写这段代码,只是想纠正一所小学/中学的错误,这等于没有钱,志愿者时间。
提前谢谢。
将 Fatal::internalError,Fata::d bError 设为静态(也是您使用的其他方法,如 "Fatal::methodName")
例:
class Fatal
{
public static dbError($sql,$message){
//method body
}
}
但错误消息指的是Fatal::dbError
而不是mysql_error
。
Fatal::dbError
为您设计的课程?试试这个:
Class Fatal{
...
static public dbError(...){...}
...
}