我更新了很多旧方法,但我已经遇到了这条线
$res =& $mdb2->query($mdb2->prepare("SELECT * FROM book WHERE id = ?"), array($sql_id));
我在错误日志中收到一条消息说 PHP致命错误:调用未定义的方法MDB2_Error :: numRows()
所以我添加了这一行
if (PEAR::isError($res)) { die($res->getMessage().' ::: '.$res->getUserInfo()); }
查看导致错误的原因并将其恢复到屏幕
MDB2 Error: syntax error ::: _doQuery: [Error message: Could not execute statement] [Last executed query: MDB2 Error: syntax error] [Native code: 1064] [Native message: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MDB2 Error: syntax error' at line 1]
我不确定查询有什么问题,对我来说还不错?
答案 0 :(得分:0)
这里是,不需要做PREPARE部分。
$res =& $mdb2->query("SELECT * FROM book WHERE id = '" . $sql_id . "' " );