Php 前一个查询完成后,如何执行对mysql的查询?
我有一个简单的问题,我想知道如何在前一个查询结束时运行数据库查询。 在我的例子中,我正在进行插入,然后对插入进行更新。 由于插入尚未完成,因此不更新 这些都是用php编写的Php 前一个查询完成后,如何执行对mysql的查询?,php,mysql,Php,Mysql,我有一个简单的问题,我想知道如何在前一个查询结束时运行数据库查询。 在我的例子中,我正在进行插入,然后对插入进行更新。 由于插入尚未完成,因此不更新 这些都是用php编写的 $id_mensaje_converted = "123"; $body_str = "Hello"; $consulta = "INSERT INTO mensajes (id_mensaje, body) VALUES ('$id_mensaje_converted', '$body_str')"; $resulta
$id_mensaje_converted = "123";
$body_str = "Hello";
$consulta = "INSERT INTO mensajes (id_mensaje, body) VALUES ('$id_mensaje_converted', '$body_str')";
$resultado = mysqli_query( $conexion, $consulta );
//Then by post I receive a status
if (isset($_POST['status'])){
$status_str = $_POST['status'];
$consulta = "UPDATE mensajes SET status = '$status_str' WHERE id_mensaje ='$id_mensaje_converted'";
$resultado = mysqli_query( $conexion, $consulta );
}
为什么要将其标记为“异步”?PHP是同步的,将按顺序执行语句。这里还有别的事情。请打开错误报告。此外,您还非常容易受到SQL注入攻击。查看准备好的语句。一种检查错误的简单方法-将其添加到脚本顶部:
mysqli_报告(mysqli_报告错误| mysqli_报告严格);ini设置(“显示错误”,1);ini设置(“显示启动错误”,1);错误报告(E_全部)
然后还可以看到我发布的第一个链接。请在进行这些更改后发回。谢谢!只有在INSERT
查询使用标志MYSQLI\u ASYNC
作为MYSQLI\u query()
的第三个参数时,才可能执行此操作。通常,该mysqli\u query()
调用将一直阻塞,直到DBMS完成请求,随后的更新应该可以工作。你的代码中可能还有其他问题,导致了你正在经历的任何奇怪的行为。此外,为了对婴儿耶稣的爱,请使用。。。