![]() |
|
首页 │ Apache │ Linux│ Java│ MySQL│ 注册│帮助 | |||
相关问题
CODE: 怎样多次访问一个后台PHP程序 作者:axgle PHPer问题:怎样多次访问一个后台PHP程序? 我写了一个前台程序,需要多次访问一个后台PHP程序。现在是每次都打开一个页面,有没有什么方法可以不打开页面,让程序在后台执行? 具体来说就是:我现在是有个a.php页面需要多次访问b.php。 现在我是在a.php中多次window.open,window.close来做的,可是觉得这样做有点傻,hehe 有谁知道不用打开b.php页面就可以多次执行b.php页面中的函数的?甚是感谢! Axgle回答:可以使用“图象预载”技术。 '图象预载'属于javascript的特性,即‘预先载入图像’. “预先载入图像”将不需要立即出现在网页上的图像载入浏览器缓存中。这能够防止当图像该出现时由于下载导致的延迟。 看到这里,你也许要奇怪,我说的这些与PHP有何关系?呵呵,大有关系。 实际上在javascript中,你只要“var im=new Image();im.src="xxx.php";”就会执行xxx.php文件。 即使xxx.php不是图片! 而若要多次执行xxx.php文件,只需要setTimeout或者setInterval函数处理一下就可以了。 特别提示,若要多次调用xxx.php,应该给xxx.php加个尾巴。型如:"xxx.php?"+Math.random(). 因为IE浏览器的缓存机制,所以当象上面那么做后,xxx.php的每次刷新都会被预载。否则只会 被预载一次---因为存在缓存。 <script language="JavaScript"> function go() { im=new Image(); im.src="timer.php?"+Math.random(); } setInterval("go()",1000); </script> 上面的代码表示timer.php每1秒执行一次,不但如此,经我的实际测试,在IE浏览器下,这样做绝对没有‘刷新’的感觉,连那个讨厌的漏斗标志也没有!所以属于真正的无刷新执行哦! 最后说明一点:这个问题还有其他答案,但我不想人云亦云,因为往往原创才能够让人耳目一新。 因此希望大家能够支持我,谢谢! |
提问者:axgle 08-18 17:05
答复

