我正在使用此方法从数据库中获取行并显示在frontend
上,但是当它执行时它会给出一个错误的错误
致命错误:在第432行的D:\ xampp \ htdocs \ Deshbandhu \ class \ tblOp.php中的非对象上调用成员函数getRow()
和我正在使用的功能代码是
function getRowFields($fields,$where = NULL, $order = NULL){
global $db;
$fields = ($fields) ? " $fields " : " * ";
$where = ($where) ? " WHERE $where " : "";
$order = ($order) ? " ORDER BY $order " : " ORDER BY {$this->primaryKey} ";
$sql = "SELECT $fields FROM {$this->table} $where $order;"; // limit 0,1
$res =$db ->getRow($sql, DB_FETCHMODE_ASSOC);
echo $res; exit;
if (DB::isError($res))
return $this->raiseError($res);
return $res;
}
和getRow()的定义是
function getRow($where = NULL, $order = NULL,$fields=NULL){
global $db;
$sql = $this->buildQuery(NULL, TBLOP_EXECUTE_SELECT, $where, $order,$fields);
//echo $sql.'<br>';
$res = $db->getRow($sql, DB_FETCHMODE_ASSOC);
if (DB::isError($res))
return $this->raiseError($res);
return $res;
}
此代码在实时服务器上运行并且没有出现任何错误,但是当我在本地服务器上执行它时,它显示的错误是这样的。
答案 0 :(得分:0)
问题在于您的$db
变量,请检查您的数据库初始化代码,它可能无法连接到数据库并且没有检查错误。
答案 1 :(得分:0)
对我来说看起来像AdoDB,我使用相同的。你忘了Databasesettings了吗?应该看起来像谎言:
$db = ADONewConnection("mysql"); // eg 'mysql' or 'postgres'
$db->Connect("host", "user", "password", "table");
答案 2 :(得分:0)
之前我遇到过这个问题,并通过修复我的表来修复它。