Le contenu de cet article est la solution à la situation où PHP PDO insère une donnée et deux données apparaissent à plusieurs reprises. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer. 🎜>
$dsn = sprintf("mysql:host=%s;dbname=%s;charset=utf8", $host, $dbName);$_dbHandle = new PDO($dsn, $user, $password, $option); $sql = "insert into `name` (`age`) values (18)";
$_dbHandle-><span class="hljs-keyword" style="color:rgb(51,51,51);font-weight:bold;">exec</span>($sql);
非常简单的sql插入,但是每次执行的时候会出现两条一模一样的数据, 在我的环境下就出现问题,在别人的环境里就没有问题,于是我怀疑是环境问题。 页面刷新的时候根本看不出重复刷新的样子,但实际上真的执行了两条,只是看不出来。 因为我当时在编写rewrite规则,nginx没有给我报任何问题,但是我只操作了这里,所以认定是rewrite的问题。 具体原因如下: 由于nginx的重写问题(rewrite)的时候,在location的模块中,错误的语法,导致了项目被重复执行了两次,因为是nginx的重写跳转问题, 在nginx层面就进行跳转了,还不等响应数据,就已经跳转了,所以我们在断点调试的时候无法检验出这个问题。 如果遇到同样的场景,可以根据实际情况尝试把rewrite文件删除,或者修改来测试是否为nginx的问题。注:apache没有测过,但是也有可能也会有类似的情况。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!