研究,在stackoverflow上看,通过google,我发现有几个人有同样的问题,解决方案一般是“仅用mysqlnd可用”。
所以我环顾四周并查看了一些代码,但据我所知,我的服务器上启用了 mysqlnd。所以这就是为什么我不相信这是重复的。
$id = $stmt->get_result();
无论出于何种原因,这行代码似乎导致我的应用程序出现故障,而该应用程序在我的本地 XAMPP 服务器上完美运行。我认为这是我的公共服务器配置的某种问题,但我不知道是什么问题。
PHP 抛出此错误:
[18-Mar-2014 15:39:27 America/Denver] PHP Fatal error:
Call to undefined method mysqli_stmt::get_result() in
/home/PATH/PAGE.php on line 47
同样,我的代码在我的本地服务器上运行良好。这是我的一些快照phpinfo()
...
为了更好的衡量,我的 PHP 版本是5.4.22
. 最后,php -i | grep mysqlnd
在系统控制台中运行给了我mysqlnd => enabled
.
那么这是什么一回事?我错过了什么?谢谢您的考虑。我希望这也可以帮助其他人。更多代码(根据要求)...
$mysqli = new mysqli('localhost', 'usr', 'pass', 'table');
$chkid = "SELECT * FROM `students` WHERE student_id = ? LIMIT 1";
if ($mysqli->connect_error) { //We'll catch an error or two here.
die("{CNCT}");
}
$arrays = json_decode($_POST['data'], true); //Here, we take the JSON string and create PHP arrays
for ($x=0; $x<=((count($arrays))-1); $x++) { //We count the array
$stmt = $mysqli->prepare($chkid);
$inputz = ($arrays[$x]['id']);
$stmt->bind_param("s", $inputz);
$stmt->execute();
$id = $stmt->get_result(); //THIS LINE
$stmt->close();
$row = $id->fetch_array(MYSQLI_NUM);
}
我确实希望我在不搞砸代码的情况下适当地删掉我需要的一切。它正在我的本地 XAMPP 服务器上运行。