我有一个网站通过“GET”方法获取某些数据,在脚本中解析它并根据它在数据库中找到的结果回显一些数字。
所以http://XXX.XX.XXX/data.php?Numbers=1 2 3 4 5 6 7 8 9 10 11 12
显示:6563
现在,当我更改其中一个数字或直接在网址中发送到网站的所有数字时,它应该更改回显的值,但这只会在我点击刷新(CTRL-R)时发生,而不是在我打进去。当我点击进入又名刷新而不必实际刷新时,我需要它发生
http://XXX.XX.XXX/data.php?Numbers=10 20 30 40 50 60 70 80 90 100 110 120
显示:6563何时显示其他内容
如果有人知道这个问题或者可以采取什么措施来解决这个问题,我们将不胜感激。
谢谢!
答案 0 :(得分:1)
首先,您的网址中不应包含空格。请查看urlencode
docs和urldecode
docs
您的特定问题(没有看到任何代码)似乎是您的浏览器缓存页面结果的结果。 CTRL + R告诉浏览器“我不关心你缓存了什么,给我一个新副本”。
要绕过不需要的浏览器缓存,您可以尝试使用header
函数之前您的脚本将任何输出发送到浏览器(如果您不这样做,您将收到有关错误消息的信息)标头已被发送)告诉客户端不要缓存页面:
header('Cache-Control: no-cache');
header('Pragma: no-cache');
浏览器是否遵守您的命令完全取决于浏览器的判断(尽管应该如此)。
答案 1 :(得分:0)
您是否对网址进行编码/解码?看来你不是那样做的。检查一下:http://php.net/manual/es/function.urlencode.php
答案 2 :(得分:0)
我最好的猜测是您的浏览器正在缓存该页面,并且只有在您按下刷新时才会重新下载它。
尝试将此添加到您的脚本中(在任何输出之前):
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");