编程语言
首页 > 编程语言> > php – 在表单提交后取消设置变量

php – 在表单提交后取消设置变量

作者:互联网

有没有办法做到这一点?基本上,如果有人在提交表单一次后按下刷新,我不希望再次提交表单.在这种情况下,浏览器会询问,您是否要再次提交表单.请问unset($_ POST [‘username’])是否有任何帮助?

解决方法:

一些海报已经提到过post / redirect / get是一个不错的选择.

我能想到的另一种方法是在dostuff.php页面中设置一个会话,以指示发布已经完成.每次检查此会话var以查看是否由于页面刷新而再次加载页面.

<?php
    session_start();
    if(isset($_SESSION['indicator'])) 
    {
        /*
        dont do anything because session indicator says 
        that the processing was already done..

        you might want to redirect to a new url here..          
        */
    }   
    else
    {

        /*
        first set session indicator so that subsequent 
        process requests will be ignored
        */
        $_SESSION['indicator'] = "processed"; 

        //process the request here..
    }
    ?>

在您重定向到的页面中,取消设置会话var,以便可以重新重新提交表单,使其成为新的后期操作.这将允许新的表单发布,但会阻止页面刷新后的后期操作

标签:php,form-submit
来源: https://codeday.me/bug/20191001/1838974.html