所以我花了很多时间来弄清楚发生了什么以及我的数据库如何随机更新其自我,但我发现它直接与使用相关:
Javascript中的document.body.style.backgroundImage
。
是否有人知道如何阻止此操作再次运行我的查询或document.body.style.backgroundImage
如何工作?备择方案?我不能让Javascript更改后台运行查询。
具体细节信息
我正在运行网站,在页面开头加载PHP获取time()
并使用mysql_query()
语句将其存储在数据库中。
我最近在我的网站上实现了一个经常运行的Javascript循环,并在函数中使用此代码更改背景:document.body.style.backgroundImage = "url('')";
我注意到,当它运行并且后台发生变化时,不知何故,查询会在我的网站上再次运行,并且会再次更新我的数据库,从而更改时间。 我通过注释掉javascript后台更改语句来分离原因,让循环的其余部分像正常一样运行。之后,它不再更新。一旦我取消评论该行,问题就会再次发生。
答案 0 :(得分:1)
这是因为当您将背景图像设置为url('')
时,您实际上是在告诉浏览器为您当前所在的页面发出HTTP请求。空字符串''被视为相对URL。 (当您省略表单的action
或将其设置为''时,会发生同样的事情 - 表单将提交到当前页面。)
要解决此问题,请尝试使用document.body.style.backgroundImage = "";
代替url('')
。