首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么mysql插入10行而没有for循环?

问为什么mysql插入10行而没有for循环?
EN

Stack Overflow用户
提问于 2011-09-19 12:42:32
回答 1查看 916关注 0票数 0

我想要这样的东西,当用户按下f5刷新网页时,网页将比较当前时间和以前存储在会话中的时间。如果当前时间与前一次相比是5秒,mysql将将数据存储到数据库中。当用户在50秒后刷新页面时,mysql应该将1个数据存储到数据库,但为什么mysql将10个数据存储到数据库?用户只刷新页面1次,但mysql插入10次。为什么会发生这种事?我的密码:

代码语言:javascript
复制
<?php
if (strtotime($_SESSION[servertime]) < time()-5){ //10800 = 3 hours 3600 = 1 hour   
  $_SESSION['servertime'] = $servertime; 
  $_SESSION['ipaddress'] = $currentipAddress;
  $query = "INSERT INTO traceuser 
              (ibrowser, operatingsystem, ipaddress, datetime, username) 
            VALUES (
             '{$userbrowser}', '{$CurrOS}', '{$currentipAddress}'
             , '{$servertime}', '{$username}')";
  $result = mysql_query($query, $connection);
} else {
  echo "<script type='text/javascript'>alert('I did not save your info this time, because each visitor can save info for 1 time per 5 seconds.')</script>";
}
?>

我认为问题就在这一行:if (strtotime($_SESSION[servertime]) < time()-5),当用户在50秒后刷新页面时,mysql将每5秒将数据存储到数据库,因为50秒-5秒=10秒,所以mysql插入了10行。如何使mysql只插入一行?

更新:发现了问题!我每10秒检查一次我的数据库记录,我意识到它每10秒就会插入一次新的数据,尽管我没有使用f5刷新页面。问题是我把Yahoo Ping Box添加到我的网站上了!据我所知,Yahoo Ping Box信使将每10秒检查一次新消息,我不确定Yahoo Ping Box代码如何影响我的php/mysql代码?我可以知道如何防止Yahoo Ping Box代码影响我的php/mysql代码吗?这是导致问题的Yahoo Ping框的代码:

代码语言:javascript
复制
<object id="pingboxh57fsuytam000" type="application/x-shockwave-flash" data="http://wgweb.msg.yahoo.com/badge/Pingbox.swf" width="610" height="320"><param name="movie" value="http://wgweb.msg.yahoo.com/badge/Pingbox.swf" /><param name="allowScriptAccess" value="always" /><param name="flashvars" value="wid=oCqiyuy8QmXM8PXSd0uhP6Au" /></object>

您可以通过将Yahoo代码复制到您的php/mysql脚本中进行测试,您将看到神奇的将记录插入到您的数据库中,每5到10秒。我可以知道如何防止Yahoo Ping Box代码影响我的php/mysql代码吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-19 14:35:35

您的页面是否使用ajax或其他可能在每次页面加载时多次攻击您的服务器的技术?我同意所写的代码每次只写一次。帮助找出正在发生的事情的一种方法是在if子句中添加一个断点,或者在其中添加一个error_log() (如果没有设置调试器)。我怀疑您会发现客户端多次调用您的代码。麦克

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7471101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档