防止表单重复提交

Posted datiangou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了防止表单重复提交相关的知识,希望对你有一定的参考价值。


    <?php  
    /* 
    * PHP简单利用token防止表单重复提交 
    * 此处理方法纯粹是为了给初学者参考 
    */  
    session_start();  
  
    var_dump($_POST);
    function set_token() {  
         $_SESSION['token'] = md5(microtime(true));  
         var_dump($_SESSION['token']);
    }  
      
    function valid_token() {  
        $return = $_REQUEST['token'] === $_SESSION['token'] ? true : false;  
        set_token();  
        return $return;  
    }  
      
    //如果token为空则生成一个token  
    if(!isset($_SESSION['token']) || $_SESSION['token']=='') {  
        set_token();  
    }  
      
    if(isset($_POST['test'])){  
        if(!valid_token()){  
            echo "token error";  
        }else{  
            echo '成功提交,Value:'.$_POST['test'];  
        }  
    }  
    ?>  
    <form method="post" action="">  
        <input type="hidden" name="token" value="<?php echo $_SESSION['token']?>">  
        <input type="text" name="test" value="Default">  
        <input type="submit" value="提交" />  
    </form>  

以上是关于防止表单重复提交的主要内容,如果未能解决你的问题,请参考以下文章

防止表单重复提交token

防止在jQuery中重复提交表单

Struts中防止表单重复提交

Jquery 实现表单提交按钮变灰,防止多次点击提交重复数据

token防止前端重复提交

Jquery 实现表单提交按钮变灰,防止多次点击提交重复数据