作者MrMarcus (请勿忘记密码)
看板Programming
标题Re: [请益] PHP图形显示问题
时间Mon Jun 18 15:16:55 2007
※ 引述《ogson (小猪仔)》之铭言:
: ※ 引述《[email protected] (㊣保护地球 拒绝劈叉[PX])》之铭言:
: : 你前面不要空那麽多格,大部分人的telnet宽度都只有80 col.
: : 另外写一个html档案,里面用img含入那个图档
: : 然後在原来的档案里面做连结指到新的档案
: : 你还可以写meta refresh,规定在若干秒之後自动跳到新的那页。
: :
: 再请教一下各位
: 目前我先写好四个档案如下(依执行顺序排序)
: h1.html:产生表格让使用者输入资料
: p1.php:藉由输入的资料用Gnuplot画图并储存,header到h2.html
: h2.html:再由src=p2.php 读取图档并显示
: p2.php:读取储存的图形
: 以这样的流程,我是以输入资料,然後得到图,再回上一页,再输入资料
: 得到图,如此反覆做简单测试,在firefox上执行没什麽问题,但是到了IE
: 却出现了问题,在第一次启动IE并执行时,图形有出来没问题,但当我回
: 到上一页,再输入资料执行得到的图形却是最一开始(第一次启动IE产生
: 的图)的图形,如果按REFRESH才会将最新产生的图读进来,想请问一下,会
: 有这样的问题,是因为IE本身有各buffer储存你第一次执行的网页(h2.html)
: 当你要再一次读取,IE并不会再发出request,而会直接去buffer找(但是并没
: 有更新的动作),所以每次都得到一样的网页内容,反之,firefox则会做更新的
: 动作,所以我得到的结果都是最新的,这部分还请高手帮忙解答一下。
: 如果是这样的话,那我是在程式内写入refresh的动作吗?或是各位有更好的解决
: 办法?
另一个方式是像其他网友提的,送防止快取的header给浏览器。
但是这个header要注意,不是放在你的h2.html里面,而是要在
你送出图片的p2.php里面。换句话说,在你的p2.php里面,要
送出图片资料之前,加上这两行:
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // 随便给个过去的时间
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.132.153.19