Php 插入查询成功执行,但数据未插入数据库

Php 插入查询成功执行,但数据未插入数据库,php,mysql,sql,database,mysqli,Php,Mysql,Sql,Database,Mysqli,我是php的新手,所以如果这个问题太愚蠢,请原谅 我试图使用mysqli在表中插入数据。查询成功执行并返回插入的id。但数据未插入到数据库表中 引发问题的代码: 结果: 执行成功,返回Id:60,数据库中未插入数据 3. 试试看: 我和他核实过了 mysqli_query($dbObject->conn, $query) or die('Failed to insert'); $dbObject->conn->query($query); 结果: 执行成功,返回Id:61

我是php的新手,所以如果这个问题太愚蠢,请原谅

我试图使用mysqli在表中插入数据。查询成功执行并返回插入的id。但数据未插入到数据库表中

引发问题的代码: 结果:

执行成功,返回Id:60,数据库中未插入数据


3. 试试看:

我和他核实过了

mysqli_query($dbObject->conn, $query) or die('Failed to insert');
$dbObject->conn->query($query);
结果:

执行成功,返回Id:61,数据库中未插入数据


4. 试试看:

使用
MYSQL Querybrowser

结果:

执行成功,数据插入到ID为62的数据库中


5. 试试看:

我用类似的问题检查了StackOverflow中几乎所有的问题,并尝试了几乎所有的答案

结果:

没什么变化,还是一样的问题


在过去的两天里,我一直在讨论这个问题,我尝试了很多方法,但都失败了。请帮帮我,提前谢谢。

我终于修好了

在我的代码中,我将
autocommit
设置为
false
,这就是问题所在:

$dbObject->conn,->autocommit(FALSE);
我将上述代码更改为:

$dbObject->conn,->autocommit(TRUE);
谢谢,他下面的评论帮助我找到了这个问题

我看到了两个可能的原因:1)我在代码中没有看到提交-如果 您没有在自动提交模式下运行,更改不会发生 坚持。2) 您可以看到可重复读取默认值的效果 用于检查数据的SQL客户端中的隔离级别。跑 在检查数据之前,客户端程序中的提交或回滚。 –一匹没有名字的马


您能否向我们展示您正在执行的实际查询?看起来您的数据正在成功插入。您如何检查它是否已插入数据库?是否有可能您有两个数据库,并且正在连接到另一个数据库,而您认为是这样的?您是否可以访问phpmyadmin之类的工具来直接查看数据库?我看到两个可能的原因:1)我在代码中没有看到提交-如果您没有在自动提交模式下运行,则更改不会持久化。2) 您可以在用于检查数据的SQL客户机中看到可重复读取的默认隔离级别的效果。在检查数据之前,在客户端程序中运行
commit
rollback
。@DamienBlack:是的,我在phpmyadmin上检查过,也在mysql查询中检查过browser@a_horse_with_no_name:非常感谢。它解决了这个问题。
$dbObject->conn,->autocommit(TRUE);