怎样防止刷新页面时,再次提交数据到数据库?

解决方案 »

  1.   


    能给个例子,或者讲解一下思路,刚才我用了session,但是思路混乱,没有成功
      

  2.   

    提交表单用onclick来触发,去掉默认的submit...
      

  3.   

    现在多用javascript来提交表单,防止重复提交
      

  4.   

    简单的方法是通过session来判断,也可以通过token
      

  5.   

    使用session来控制。在form的页面,设置一个session,放在一个form field里。submit后,检验session是否和form field一样。用完后,把session的值改变。
      

  6.   


    具体session在哪里定义啊,我定义的session一刷新页面就发生变化。代码如下:
    <?php
        $code = mt_rand(0,1000000);
        $_SESSION['code'] = $code;
    ?>
    <html>
    <body>
    <?php
    if(isset($_POST['originator'])) {
        if($_POST['originator'] == $_SESSION['code']){
           echo "正在提交";
           session_unset ();
        }else{
            echo "请不要刷新本页面或重复提交表单!";
        }
    }
    ?><form  action="<?php echo $PHP_SELF ?>" method="post" >
    <input type="text" name="originator" value="<?=$code?>">
    <input type="submit" value="提交" />
    <input  type="reset" value="重置" />
    </form>
    </body>
    </html>