PHP 2 条准备好的语句错误
PHP 2 Prepared Statements Error
我有 2 个准备好的函数语句。在我从第一个得到结果后,我需要这个结果中的一个字段的值在第二个语句中用作 bind_param()
函数的参数。但是我遇到了错误,直到我发现 store_result()
函数并在第一个语句之后使用它。那么你能告诉或提供一些参考阅读,为什么需要使用store_result()
函数以及为什么会出现这个问题,在使用2个准备好的语句时。
我不知道我是否正确,但在我看来,这是因为我没有在开始第二个语句之前关闭第一个语句,并且可能因为两个语句都打开,所以出现了一些错误。
编辑:
我发现了一些信息,以某种方式帮助我解决了这个问题
命令不同步:
This can happen, for example, if you are using mysql_use_result() and try to execute a new query before you have called mysql_free_result(). It can also happen if you try to execute two queries that return data without calling mysql_use_result() or mysql_store_result() in between.
store_result() 自己使用 Transfers a result set from the last query.
Example :
$stmt = $mysqli->prepare("SELECT col1,col2 FROM tabel WHERE col1= ?")
$stmt->bind_param('s', $test);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($col1,$col2);
$stmt->fetch();
- 您可以在here如何使用准备语句中阅读。
- 您可以阅读 this 文档如何使用 mysqli 准备语句。
我有 2 个准备好的函数语句。在我从第一个得到结果后,我需要这个结果中的一个字段的值在第二个语句中用作 bind_param()
函数的参数。但是我遇到了错误,直到我发现 store_result()
函数并在第一个语句之后使用它。那么你能告诉或提供一些参考阅读,为什么需要使用store_result()
函数以及为什么会出现这个问题,在使用2个准备好的语句时。
我不知道我是否正确,但在我看来,这是因为我没有在开始第二个语句之前关闭第一个语句,并且可能因为两个语句都打开,所以出现了一些错误。
编辑:
我发现了一些信息,以某种方式帮助我解决了这个问题
命令不同步:
This can happen, for example, if you are using mysql_use_result() and try to execute a new query before you have called mysql_free_result(). It can also happen if you try to execute two queries that return data without calling mysql_use_result() or mysql_store_result() in between.
store_result() 自己使用 Transfers a result set from the last query.
Example :
$stmt = $mysqli->prepare("SELECT col1,col2 FROM tabel WHERE col1= ?")
$stmt->bind_param('s', $test);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($col1,$col2);
$stmt->fetch();
- 您可以在here如何使用准备语句中阅读。
- 您可以阅读 this 文档如何使用 mysqli 准备语句。