我有mysqli脚本,不幸的是它不能在PHP 5.3.29的服务器上运行。
就我可以调试而言,服务器不会返回函数get_result()的任何值,脚本会在它之后中断。有什么问题吗?
$query = "SELECT * FROM test WHERE column = ? LIMIT 1"; $stmt = $mysqli->stmt_init(); if(!$stmt->prepare($query)) echo "Failed to prepare statement\n"; else echo "prepare statement okay\n"; if(!$stmt->bind_param('s', 'test')) echo "Failed to bind parameter\n"; else echo "bind parameter okay\n"; if(!$stmt->execute()) echo "Failed to execute\n"; else echo "execute okay\n"; $result = $stmt->get_result(); if(!$result) echo "Failed to get result \n"; else echo "result okay\n";
输出只是:
prepare statement okay bind parameter okay execute okay
有什么想法吗?
答案 0 :(得分:0)
您收到以下错误:
PHP致命错误:调用未定义的方法mysqli_stmt :: get_result()
错误消息不会留下任何疑问:您正在调用不存在的方法。
在PHP手册中查找有问题的方法显示了这个细节:
仅适用于mysqlnd。
因此,它不仅需要满足您的PHP版本,还需要特定的mysql驱动程序。