下面有一个简单的代码。运行一次后,会将结果两次插入mysql数据库。
如果基于页面上的 1 次刷新运行两次或请求两次,为什么输出只是 1 个结果?
我已经用谷歌搜索了一整天并努力解决这个问题。但是,我没能弄清楚这段代码有什么问题。代码在本地主机上运行完美,但是移至服务器后,问题就出现了。以前有人遇到过这样的事情吗?如何解决这个问题?
完整代码:
<?php
$db=mysql_connect('localhost','zzzzzzz','xxxxxx') or die('Unable to connect.'.mysql_error());
mysql_select_db('test',$db) or die(mysql_error($db));
$sql="INSERT INTO test_table(value,insert_time) VALUES ('testing','".time()."')";
$result=mysql_query($sql);
echo "result=".$result;
$select="select * from test_table";
$rs=mysql_query($select);
while($row=mysql_fetch_array($rs)){
echo $row["test_id"]." -- ".$row["value"]." -- ".$row["insert_time"]."<br />";
}
?>
结果:
结果=1
1 -- 测试 -- 1298185509
但是在数据库中:
test_id 、 value 、 insert_time
1、测试,1298185509
2、测试,1298185511
最佳答案
我遇到了和你一样的问题,只有当我使用 Opera 或 chrome 时才会出现该问题。
就我而言,我有一个 .htaccess
将所有内容都指向索引文件。当然,浏览器会请求脚本两次,一次是针对脚本本身,另一次是针对网站图标。
修复: 仅针对特定请求运行插入查询,而不是针对您网站上的任何请求。
关于php运行一次并在mysql数据库中插入两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55570514/