下载帝国网站管理系统5.0正式版
 帝国论坛技术交流区网络编程location.href转向验证码更新问题的解决方案
帝国CMS5.0正式版发布
中客:空间产品随时可无条件退款!
测试:生成20万数据共用107分钟
《帝国下载系统》全面免费
Mysql大数据备份工具下载
帝国软件旗下新站 - 站长工具
1G双线帝国空间+200M数据库=158
帝国CMS教程下载
主题:location.href转向验证码更新问题的解决方案 [加入收藏夹]   

hicode
用户头衔:版主

精华贴   :1
发贴数   :9148
经验值   :19972
注册时间:2007-07-20
信息 搜索 好友 发送悄悄话 《帝国网站管理系统》基础教程下载】   [第 1 楼]
location.href转向验证码更新问题的解决方案
作者:qh663
来原:phpx

由于使用的是mvc结构,在输出页面html内容有这么一句,这是一个验证码图片显示

<img name="validate" src="validate.php" width="68" height="23" alt="看不清楚可点击这里更换!" border="0"  onclick="this.src=this.src;" style="cursor : pointer;">

validate.php文件内容如下,可正常显示验证图片


<?php
require_once('config.php');
unset($_SESSION['validate']);
require_once(PATH_CLASS.'validate.class.php');
new validate;
?>
config.php



<?php
session_cache_limiter('private, must-revalidate');
session_start();
....
?>
当验证错误时提示


<?php
.....
<input  type="button"  value="返  回"  onclick="location.href=‘index.php?mod=login' ">
.....
?>
点击“返回”相当于重新在当前页打开一个页面。理论上说,应当显示的是一个新的验证码图片。然而,它仍旧显示旧的验证码图片。按f5刷新才会变成一个新的验证码图片。要知道 location.href 不等于history.go(-1), location.href 本身就相当于初始一个页面。而事实变得让人迷惑了。

经反复检查,validate.php文件没有问题,config.php文件也没有什么值得怀疑的。显示页面也不存在问题。那么,是什么原因造成这个短暂的错误呢?!在网上查了很久,也有人遇到过这种情况,但却没有解决方法。只能通过刷新页面来解决吗?

想呀想,莫非。。。。。

试一下,

真的可以了。
这次操作只加了两个符号
竟然可以了....
是”//“符号
//session_cache_limiter('private, must-revalidate');
这句session_cache_limiter('private, must-revalidate');的使用目的是让表单history.go(-1)的时候,填写内容不丢失。现在,却成了一绊脚石.....
于是再改。session_cache_limiter('private, must-revalidate');这句是要保留的,不能注释掉,否则,表单返回时数据就丢失了。只能在validate.php里面做文章。
validate.php

<?php
header("ETag: PUB" . time());
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Expires: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Pragma: no-cache");
header("Cache-Control: max-age=1, s-maxage=1, no-cache, must-revalidate");
session_cache_limiter("nocache");

require_once('config.php');
unset($_SESSION['validate']);
require_once(PATH_CLASS.'validate.class.php');
new validate;
?>
OK,问题解决了。





2007-07-22 09:19:18 已设置保密 顶部 回复 引用 报告 编辑 删除


快速回复
内容

使用EBB代码
使用smile代码
显示签名
自动分析url
自动分析img
表情                   
                
    (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1