这个错误提示表示在多个查询语句的情况下,`mysqli_next_result()` 函数已经遍历完了各个查询结果,但是仍然尝试继续查询下一个结果集。
要避免这个错误,你可以在调用 `mysqli_next_result()` 函数之前,通过调用 `mysqli_more_results()` 函数来检查是否还有更多的结果集需要处理。以下是示例代码:
// 执行多条查询语句
mysqli_multi_query($conn, "SELECT * FROM table1; SELECT * FROM table2");
// 遍历多个结果集
do {
$result = mysqli_store_result($conn);
// 处理当前结果集
} while (mysqli_next_result($conn) && mysqli_more_results($conn));
在这个例子中,`mysqli_multi_query()` 函数将执行两条查询语句,并返回多个结果集,因此需要使用循环来遍历处理每个结果集。在每次循环中,我们首先调用 `mysqli_more_results()` 函数来检查是否还有更多的结果集,如果有调用 `mysqli_next_result()` 函数来移动到下一个结果集,并重复处理步骤。当没有更多结果集时,循环结束。
需要注意的是,在使用 `mysqli_multi_query()` 函数时,多个查询语句必须用分号分隔,否则会导致无法执行多条查询语句。