2011-11-09 41 views
0

我有一个页面,它显示用户的帖子和使用jQuery setInterval函数自动刷新。Javascript setInterval函数

$(document).ready(function(){ 
setInterval(function() { 
     $('#content').load('test.php'); 
}, 5000); 
}); 

但问题是,我将不得不创建一个名为含有将每5秒被称为相同内容test.php的重复页面。我不希望人们只查看源代码并找到包含所有数据的页面。

比如这个网站有一个最近的论坛主题网页,其中更新每隔几秒钟, http://awesomescreenshot.com/0d4o0n2e0

我看在页面的源代码,找到链接的网页,这就是我发现 http://awesomescreenshot.com/0a2o0n691

我不希望人们能够找到...

有没有更好的方法来绕过这个jQuery函数?例如。调用一个php函数来运行test.php文件中的查询?

+11

注意事项setInterval()不是jQuery函数,但是原生的JavaScript –

+5

无论如何,人们将能够'找到包含数据的页面'。您无法在网络上隐藏任何内容。 – BNL

+0

@Frank,我想这个问题与SQL或数据库没有任何关系,所以我删除了SQL标记。 – bpgergo

回答

3

通过思考数据发生的位置来思考安全问题并不完全正确。反而想想谁可以访问它。如果您没有将这些数据从PHP提供给不应该首先看到的人,那么他们如何看待它并不重要。

所以你的test.php需要有安全性挂钩到你的身份验证。在伪代码中:

if (current user is authorized) 
    send data 
else 
    403 Access Forbidden 

从长远来看,默默无闻的安全只会伤害你。即使你可能模糊了这些数据的位置,也会让人有可能最终找到它。所以,后端的安全性,黑客无法触及。