av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

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

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

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

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

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

2) 通過Session Token(Session令牌)

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

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

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

將該數值發送到客戶端,作為表單隱藏字段提交:

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

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

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
相關文章:
主站蜘蛛池模板: 亚洲精品女优 | 色网在线看| 国产四区| 欧美日韩中文字幕在线 | 国产欧美在线观看 | 99久久精品免费看国产四区 | 欧美 日本 国产 | 日韩在线一区二区 | 国产一二三区免费视频 | 99精品一区二区 | 亚洲视频在线观看一区二区三区 | 日韩一区二区在线观看 | 蜜桃av人人夜夜澡人人爽 | 男女下面一进一出网站 | 国产91丝袜在线播放 | 免费在线观看成人 | 99综合网 | 欧美精品首页 | 四虎最新视频 | 91精品国产乱码久久久久久 | 亚洲欧美少妇 | 日韩av在线一区二区 | 午夜看片网站 | 毛片入口| 91精品久久久久久久久中文字幕 | 91视频精选| 精品二区 | 国产成人一区二区三区 | 日韩视频1| 欧美日韩久久精品 | 日韩一区和二区 | 欧美精品被 | 99久久99热这里只有精品 | 99精品国产一区二区三区 | 欧美精品中文字幕久久二区 | 国产日韩精品一区二区 | 国产日韩欧美在线观看 | 在线色网| 久久久久久影院 | 毛色毛片免费看 | 日本三级在线网站 |