【发布时间】:2013-01-08 18:55:39
【问题描述】:
我正在对 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/ 中的不兼容上下文第 91 行的 public_html/Library/classes/Query.php
我尝试使用$r->mysql_error(); 使其成为对象调用,但这导致了不同的错误。我不是想重写这段代码,只是想纠正一所小学/中学的错误,这等于没有钱,志愿者时间。
提前致谢。
【问题讨论】:
-
但错误消息是指“Fatal::dbError”而不是“mysql_error”。
-
不要再使用
mysql-extension。阅读php.net/en/mysql-connect -
@KingCrunch 问题不是关于“使用”的问题是关于失败的问题,在您的回复中添加 cmets 可能有用,但请先让位,以便他可以解决问题。谢谢。
标签: php exception methods standards strict