首页  >  文章  >  后端开发  >  PHP PDO插入一条数据,重复出现两条的情况的解决办法

PHP PDO插入一条数据,重复出现两条的情况的解决办法

不言
不言原创
2018-04-24 10:18:382891浏览

这篇文章介绍的内容是PHP PDO插入一条数据,重复出现两条的情况的解决办法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

$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没有测过,但是也有可能也会有类似的情况。

               

以上是PHP PDO插入一条数据,重复出现两条的情况的解决办法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn