Php 命令不同步;现在无法运行此命令:多个查询,而不是同时运行

Php 命令不同步;现在无法运行此命令:多个查询,而不是同时运行,php,mysql,mysqli,Php,Mysql,Mysqli,我正在制作一个PHP/MySQLi网站应用程序,我遇到了这个可怕的错误,命令不同步;现在无法运行此命令 我有一个数据库连接 附言——这与所有其他标题类似的问题都不同——我已经通读了所有这些问题。我要做的是打开第一个查询,关闭第一个查询,然后打开第二个查询。我不想一次执行多个语句,也不想同时打开多个结果集 以下是我正在做的: <?php $sql = 'CALL spSelectProductAndVendor(1, 1)'; $rs = $mysqli->query($sql);

我正在制作一个PHP/MySQLi网站应用程序,我遇到了这个可怕的错误,命令不同步;现在无法运行此命令

我有一个数据库连接

附言——这与所有其他标题类似的问题都不同——我已经通读了所有这些问题。我要做的是打开第一个查询,关闭第一个查询,然后打开第二个查询。我不想一次执行多个语句,也不想同时打开多个结果集

以下是我正在做的:

<?php
$sql = 'CALL spSelectProductAndVendor(1, 1)'; 
$rs = $mysqli->query($sql);
echo($mysqli->error);
if ($rs->num_rows > 0) {
    while ($row=$rs->fetch_assoc()) {
        echo '<h1 class="page-header">' . $row["productname"] . '<small> pertaining to vendor: ' . $row["vendorname"] . '</small></h1>';
    }   
}   
$rs->close();
?>

第一个很好用。第二种情况并非如此。但我正在关闭第一个$rs。那么缺少了什么呢?

找到了答案。。需要添加$conn->next\u结果;关闭第一个结果集后:

$rs->close();
$mysqli->next_result();

然后第二个$rs可以安全地打开。

第二行可能与我在发布之前看到的重复,但它不是重复的,因为该问题同时运行两个mysqli结果集,答案是不要同时打开两个结果集。在这个例子中,我先打开一个,然后关闭一个,然后打开两个。saty-我应该只回显整行…一旦错误被清除,我将回显该行,而不是回显数据驱动的值。谢谢你的建议。我们可以看看你的功能吗?也许你不应该回答你自己重复的问题,而应该删除你的问题。实际上…问题中缺少$mysqli->next_result一行,这就是我一直在寻找的答案。这就是为什么它被放在答案中。这可能对其他有同样问题的人有所帮助。而且,这不是我自己重复的问题-???
$rs = $mysqli->query($sql);
$rs->close();
$mysqli->next_result();