php 解決表單重復提交實現(xiàn)方法引見
來源:易賢網 閱讀:941 次 日期:2014-09-18 10:21:48
溫馨提示:易賢網小編為您整理了“php 解決表單重復提交實現(xiàn)方法引見”,方便廣大網友查閱!

php 解決表單重復提交實現(xiàn)方法介紹

重復提交是我們開發(fā)中會常碰到的一個問題,除了我們使用js來防止表單的重復提交,同時還可以使用php來防止重復提交哦。

例1

/*

* php中如何防止表單的重復提交

*/

session_start();

if (empty($_SESSION['ip'])) {//第一次寫入操作,判斷是否記錄了IP地址,以此知道是否要寫入數據庫

$_SESSION['ip'] = $_SERVER['REMOTE_ADDR']; //第一次寫入,為后面刷新或后退的判斷做個鋪墊

//...........//寫入數據庫操作

} else {//已經有第一次寫入后的操作,也就不再寫入數據庫

echo '請不要再次刷新和后退'; //寫一些已經寫入的提示或其它東西

}

?>

具體原理

session范圍變量token來防止。

1. 開啟session:

session_start();

2. 如果有表單提交

if (isset($token))

token以hidden的形式包含在form當中。

3. 如果是重復提交表單

1.if ($_SESSION["token"] != $token) {

2. // 不讓重復提交,在此處理

3. // header("location:".$_SERVER['PHP_SELF']);

4.} else {

5. // 正常的表單提交,在此處理

6. // echo "已提交";

7.}

4. 設置token值

1.$token = mt_rand(0,1000000);

2.$_SESSION['token'] = $token;

php 解決表單重復提交實現(xiàn)方法介紹

------解決方案--------------------

是否允許用戶正常情況的第二次提交呢?

------解決方案--------------------

實際上沒有這么做的

更多信息請查看IT技術專欄

更多信息請查看網絡編程

扫描二维码关注易贤网公众号

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼

【备考推荐】2025年事业单位联考系统精讲课,免费试看,配套资料包邮到家

關于我們 | 聯(lián)系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網