if(isset($_POST["sel"]){
$a=$_POST["sel"];
unset($_POST["sel"];
echo "<script language='javascript'>window.location.href(?ok=ok)</script>";
}......<form name="test" method="POST" action="">
<input id="yes" type="submit" name="sel" value="aaa"></li>
<input id="no" type="submit" name="sel" value="bbb"></li>
</form>这是显示的代码的顺序结构我在提交后.当接收到这个数据了之后就算是ok了.然后注销掉$_POST["sel"]这个量.同时用javascript再次跳转到本页面来(我想这样就不会存在$_POST["sel"]这个数据了)..但是当所有执行完了之后我再刷新..它还是提示我"需要使用已输入的信息,返回此页可能需要重复已进行的所有操作.是否要继续操作?"我想在刷新的时候不要出现这个提示..也就是彻底把POST数据注销掉..请问怎么做?我在百度的时候查到这么几个方法..一个说是<meta>中设置不保留缓存.好像是什么"no-cache"..但是没有用..
再一个是说用到Post Redirect Get(PRG)..看了原理但是不知道怎么用..好像是用到什么HTTP 303跳转..但不懂..还请高手指教~

解决方案 »

  1.   

    js跳转到当前页面,但你写的href怎么这么怪呢?
      

  2.   

    赶紧掌握 ajax post 方法就什么都解决了 .你这种方式post 迟早也会想到用ajax post 的.
      

  3.   


    还没学到Ajax.....悲剧...能不能先给个暂时的可行方案?
      

  4.   


    jquery post你搜索一下google  也就是几句代码的事情 绝对不耽误你超过30分钟
      

  5.   

    管他的, 重复就重复了吧, 反正又不是重要的东西.重要的东西保准也不会因为表单重复提交而出现问题.CSDN发帖都"N连", 浮云.
      

  6.   


    要用jquery还要额外安装它的库?
      

  7.   

    搜索“php 表单重复提交”,可以看到 
      

  8.   


    妞妞..我已经弄了4个多小时了...还是没弄出来..我头都要大了...我是完全没有学这个东西啊..你直接给我个暂时性能用的算了吧..我后面再来学..我现在就想把它弄出来啊...<script src="\jquery\lib\jquery.js" type="text/javascript"></script>
    <script type="text/javascript"></script>......<form name="test" method="POST" action="">
    <ul id="nav">
    <li>Correct?&nbsp</li>
    <li><input id="yes" type="submit" name="sel" value="√"></li>
    <li><input id="no" type="submit" name="sel" value="×"></li>
    </ul>
    </form>
      

  9.   

    本帖最后由 PhpNewnew 于 2012-05-28 23:09:44 编辑
      

  10.   

    把数据处理完之后unset($_POST)就可以了
      

  11.   

     1 表单提交后跳到另外一个页面
     2 像 @PhpNewnew 说的,使用AJAX提交
       使用AJAX POST的时候,要注意提交按钮的“锁定”。 3 给表单赋上一个唯一的uniqid,提交表单的时候检查此值。 4 或者使用验证码(实际上和方法3原理一样)
      

  12.   

    用Header Redirection应该可以吧?header('Location:your page');。这个功能和那个location.href=your page差不多,我用这个是可以工作的。
      

  13.   

    展示表单页面的时候, 设定一个cookie =1 提交1次就+1
    这样只需要判断cookie的值就可以了
      

  14.   

    给form添加一个验证码就行了
    <input type="hidden" value="xxxxxxxx" name="code" />
    xxxxxxx值为生成页面的时候在服务器端生成,可存入session保存,
    提交的时候这么处理:
    $code = $_POST['code'];
    if (isset($_SESSION['code']) && ($_SESSION['code'] == $code)) {
        unset($_SESSION['code']);
        do others
    } else {
        // 无效提交
    }