亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

PHP中使用Session令牌防止Ajax表單重復提交

瀏覽:2日期:2022-09-13 09:50:56

防止表單重復提交主要有兩種方式:

1) 通過重定向(非Ajax表單提交)

2) 通過Session Token(Session令牌)

當客戶端請求頁面時,服務器會生成一個隨機數(shù),并且將該隨機數(shù)放置到session當中,然后將該隨機數(shù)發(fā)向客戶端;如果客戶第一次提交,那么會將該隨機數(shù)發(fā)往服務器端,服務器會接收到該隨機數(shù)并且與session中所保存的隨機數(shù)進行比較,這時兩者的值是相同的,服務器認為是第一次提交,并且將更新服務器端的這個隨機數(shù)值;如果此時再次重復提交,那么客戶端發(fā)向服務器端的隨機數(shù)還是之前的那個,而服務器端的隨機數(shù)則已經(jīng)發(fā)生了變化,兩者不同,服務器就認為這是重復提交。

生成一個隨機數(shù)并使用md5進行加密:

$_token = md5(microtime()+rand(1,10000));$_SESSION[’_token’] = $_token;

將該數(shù)值發(fā)送到客戶端,作為表單隱藏字段提交:

<input type='hidden' value='<?php echo $_token;?>' name='_token'/>

然后在提交的時候將提交過來的數(shù)據(jù)和服務器Session中的數(shù)據(jù)進行對比,如果為空或不相等,則都認為是非法操作:

if(!isset($_POST(’_token’))){ echo json_encode(array(’status’=>’failed’,’msg’=>’非法操作!’)); exit();}if(isset($_POST[’_token’]) && $_POST[’_token’]!=$_SESSION[’_token’]){ echo json_encode(array(’status’=>’failed’,’msg’=>’表單只能提交一次,不能重復提交!’)); exit();}

標簽: PHP
相關文章:
主站蜘蛛池模板: 亚洲男人a天堂在线2184 | 成人综合婷婷国产精品久久免费 | 在线观看欧美亚洲日本专区 | 国产伦久视频免费观看视频 | 波多野结衣在线视频观看 | 99亚洲精品| 午夜国产精品不卡在线观看 | 中文字幕在线看 | 国产三级在线观看免费 | 日本加勒比系列 | 精品国产自 | 国产成人精品男人的天堂网站 | 日日干日日操日日射 | 亚洲精品一区二区三区福利 | 日本人一级毛片免费视频 | 日本一视频一区视频二区 | 国产欧美17694免费观看视频 | 欧美日韩在线视频不卡一区二区三区 | 国内精品自产拍在线观看91 | 一区二区在线欧美日韩中文 | 日本乱子伦xxxx| 国产成人艳妇在线观看 | 精品欧美成人bd高清在线观看 | 国产三级小视频在线观看 | 精品欧美小视频在线观看 | 国产精品反差婊在线观看 | 久久久久久久久久免免费精品 | 日韩欧美色综合 | 久久精品国产精品青草 | 最新版天堂资源中文官网 | 毛片在线视频在线播放 | 欧美性猛交xxxxbbb | 欧美极品大肚孕妇孕交 | 日韩a一级欧美一级在线播放 | 99精品在线看 | 中国一级毛片欧美一级毛片 | 欧美成人久久久免费播放 | 久久精品国产精品亚洲20 | 国产短裙黑色丝袜在线观看下 | 一级做a爰片久久毛片16 | 婷婷三级 |