好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php中防止post提交重复数据 - php高级应用

php中防止post提交重复数据

重复提交数据我们在应用中经常会碰到了,今天我给各位介绍利用session来防止用户不小心重复提交数据的一个例子.

原理非常的简单,就是用session在表单页面记录下,然后提交页面判断,如果相等则视为成功,并清空session.

例子,代码如下:

<?php  //开启session   session_start();    //如果有提交标识   if (isset( $_GET [ 'action' ]) &&  $_GET [ 'action' ] ===  'save' ){      //如果有session且跟传过来的值一样 www.phpfensi.com 才算提交     if (isset( $_SESSION [ '__open_auth' ]) && isset( $_POST [ 'auth' ]) &&  $_SESSION [ '__open_auth' ] ==  $_POST [ 'auth' ]){    print_r( $_POST );     $_SESSION [ '__open_auth' ] = null; //清空    }  else  {       //走起     header( "location: post.php" );   }    exit ();  }    //授权   $auth  =  $_SESSION [ '__open_auth' ] = time();    ?>  <!doctype html>  <html>  <head>   <meta charset= "UTF-8" >   <title>post</title>  </head>  <body>   <form action= "post.php?action=save"  method= "post" >    <ul>     <li>      <input type= "hidden"  name= "auth"  value= "1395454119" >      <input type= "text"  name= "userName" >     </li>     <li>      <input type= "password"  name= "userpass" >     </li>     <li>      <input type= "submit"  value= "走起" >     </li>     <li>      1395454119   </li>    </ul>   </form>  </body>  </html>

查看更多关于php中防止post提交重复数据 - php高级应用的详细内容...

  阅读:42次