PHP實(shí)現(xiàn)防止表單重復(fù)提交功能【基于token驗(yàn)證】
本文實(shí)例講述了PHP實(shí)現(xiàn)防止表單重復(fù)提交功能。分享給大家供大家參考,具體如下:
防止表單重復(fù)提交的方法有很多種,那么今天就給大家介紹一種php如何有效的防止表單重復(fù)提交。
代碼非常簡單
我相信大家很聰明給大家分享一個(gè)小的demo,大家可以借鑒一下:
具體代碼:
<?php /* * 2016年9月29日08:09:13 */ session_start(); header("Content-Type: text/html;charset=utf-8"); function set_token() { $_SESSION['token'] = md5(microtime(true)); } function valid_token() { $return = $_REQUEST['token'] === $_SESSION['token'] ? true : false; set_token(); return $return; } //如果token為空則生成一個(gè)token if(!isset($_SESSION['token']) || $_SESSION['token']=='') { set_token(); } if(isset($_POST['web'])){ if(!valid_token()){ echo "token error,請不要重復(fù)提交!"; }else{ echo '成功提交,Value:'.$_POST['web']; } }else{ ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <title>PHP防止重復(fù)提交表單</title> <meta name="keywords" content="PHP" /> <meta name="description" content="PHP防止重復(fù)提交表單" /> </head> <body> <div id="main"> <div class="demo"> <form method="post" action=""> <input type="hidden" name="token" value="<?php echo $_SESSION['token']?>"> <input type="text" class="input" name="web" value="腳本之家"> <input type="submit" class="btn" value="提交" /> </form> </div> </div> </body> </html> <?php }?>
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php程序設(shè)計(jì)安全教程》、《php安全過濾技巧總結(jié)》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
- thinkphp5框架API token身份驗(yàn)證功能示例
- php版微信開發(fā)Token驗(yàn)證失敗或請求URL超時(shí)問題的解決方法
- PHP token驗(yàn)證生成原理實(shí)例分析
- PHP實(shí)現(xiàn)微信公眾號驗(yàn)證Token的示例代碼
- php token使用與驗(yàn)證示例【測試可用】
- 詳解php curl帶有csrf-token驗(yàn)證模擬提交方法
- Thinkphp5 微信公眾號token驗(yàn)證不成功的原因及解決方法
- 關(guān)于php微信訂閱號開發(fā)之token驗(yàn)證后自動(dòng)發(fā)送消息給訂閱號但是沒有消息返回的問題
- 驗(yàn)證token、回復(fù)圖文\文本、推送消息的實(shí)用微信類php代碼
- php中關(guān)于token驗(yàn)證的相關(guān)問題詳解
相關(guān)文章
PHP使用pdo連接access數(shù)據(jù)庫并循環(huán)顯示數(shù)據(jù)操作示例
這篇文章主要介紹了PHP使用pdo連接access數(shù)據(jù)庫并循環(huán)顯示數(shù)據(jù)操作,結(jié)合實(shí)例形式較為詳細(xì)的分析了php使用pdo進(jìn)行access數(shù)據(jù)庫連接、查詢、執(zhí)行sql語句、預(yù)處理等相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2018-06-06php mysql procedure實(shí)現(xiàn)獲取多個(gè)結(jié)果集的方法【基于thinkPHP】
這篇文章主要介紹了php mysql procedure實(shí)現(xiàn)獲取多個(gè)結(jié)果集的方法,基于thinkPHP實(shí)現(xiàn)針對數(shù)據(jù)庫多個(gè)結(jié)果集的相關(guān)操作技巧,需要的朋友可以參考下2016-11-11關(guān)于使用key/value數(shù)據(jù)庫redis和TTSERVER的心得體會(huì)
本篇文章是對使用key/value數(shù)據(jù)庫redis和TTSERVER的心得體會(huì)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06php學(xué)習(xí)之?dāng)?shù)據(jù)類型之間的轉(zhuǎn)換介紹
php學(xué)習(xí)之?dāng)?shù)據(jù)類型之間的轉(zhuǎn)換介紹,學(xué)習(xí)php的朋友可以參考下。2011-06-06php Smarty date_format [格式化時(shí)間日期]
php Smarty date_format [格式化時(shí)間日期] ,需要的朋友可以參考下。2010-03-03