亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

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

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

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

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

2) 通過(guò)Session Token(Session令牌)

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

生成一個(gè)隨機(jī)數(shù)并使用md5進(jìn)行加密:

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

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

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

然后在提交的時(shí)候?qū)⑻峤贿^(guò)來(lái)的數(shù)據(jù)和服務(wù)器Session中的數(shù)據(jù)進(jìn)行對(duì)比,如果為空或不相等,則都認(rèn)為是非法操作:

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’=>’表單只能提交一次,不能重復(fù)提交!’)); exit();}

標(biāo)簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 在线色片 | 97视频精品 | 伊人久久综在合线亚洲91 | 青青国产成人久久91 | 91久久亚洲精品一区二区 | 国产伦精品一区二区三区视频小说 | 又爽又黄又无遮挡的激情视频免费 | 成人免费久久精品国产片久久影院 | swag国产| 欧美人妖xxx | 成人a毛片视频免费看 | 免费国产精品视频 | 插入综合网 | 亚洲图片一区二区 | 免费簧网站永久在线播放国产 | 成人黄色在线网站 | 免费一级片视频 | 欧美福利片在线观看 | 国内外成人免费视频 | 国产精品视频永久免费播放 | 欧美日韩国产一区二区三区欧 | 性殴美| 欧美专区在线 | 人做人爱全免费视频 | 性激烈的欧美暴力三级视频 | 日本黄色小视频网站 | 伊人久久99 | 日韩一级片在线免费观看 | 国产涩 | 一级黄色日b片 | 色午夜婷婷| 亚洲精品一区二 | 国产丝袜制服 | 1000部末满18在线观看黄 | 欧美国产亚洲一区 | 天天影视色香欲综合网老头 | 国产精品一区二区手机看片 | 污视频在线观看网址 | 久久日本精品一区二区免费 | 国产亚洲精品高清在线 | 日韩在线国产精品 |