6

由于我已将我的站点移动到新的 vServer,因此我总是收到此错误消息

Fatal error:  Call to undefined method mysqli_stmt::get_result()

这些代码行工作正常

$mysql = new mysqli($db_host, $db_user, $db_password, $db_database);
$partys = NULL;
$res_partys = $mysql->query("SELECT * FROM party ORDER BY begin");
while($row_partys = $res_partys->fetch_array()) {
    $partys[] = $row_partys;
}
$count_reg = $mysql->prepare("SELECT COUNT(*) FROM guestlist WHERE partyid = ?");
$count_reg->bind_param('i', $party['partyid']);
$count_reg->execute();

$count_res = $count_reg->get_result();失败了。已启用 mysqli 支持。

根据一些互联网资源,我需要 PHP MySQL 本机驱动程序,但我只在我的 Debian 7 机器上安装了 php5-mysql,因为通过安装 php5-mysqlndapt-get install php5-mysqlnd会自动删除 Froxlor,这是我的服务器管理面板。

除了通过 dpkg 下载并使用 dpkg 安装之外,还有其他方法安装 mysqlnd apt-get download php5-mysqlnd,因为由于未满足要求,这会在每个后续的 apt-get 调用中引发错误,并从源代码编译 PHP,包括 mysqlnd?

4

2 回答 2

5

我已经在php5-mysqlnd不删除 Froxlor 的情况下进行了安装。

Froxlor 对 有一个依赖php5-mysql,通过安装将其删除php5-mysqlnd,但也与 mysqlnd 兼容。

所以我不得不通过下载包apt-get download php5-mysqlnd并使用安装它dpkg -i --ignore-depends=froxlor php5-mysqlnd_5.4.4-14+deb7u7_amd64.deb

于 2014-01-20T16:57:03.570 回答
0

您的服务器没有 mysql 本机驱动程序 (mysqlnd)。

在您的服务器中安装此扩展程序以使用获取结果功能。

于 2014-01-20T07:52:55.717 回答