程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php 防止表單重復提交兩種實現方法

php 防止表單重復提交兩種實現方法

編輯:PHP綜合

php 防止表單重復提交

由於網絡原因,經常出來點了提交按鈕,網頁沒有反應,而進行再次點擊。這樣就導致後台收到兩次提交,從而進行兩次處理,本文章向大家介紹php 防止表單重復提交的幾種方法

1、前端解決

方法一:

可以通過前端來解決。當用戶點了提交按鈕之後,先使用js進行有效性判斷,沒問題後,將提交按鈕”禁用“掉。然後再提交!

方法二:

使用ajax提交表單。點了提交按鈕後,禁用提將按鈕,或者設置一個狀態值,將其設為1,表示正在提交。再提交時判斷如果正在提交,則不作處理。等ajax返回後,再恢復狀態。

2、後端解決

有時候前端無法完全解決問題,比如我用了jquery.validateEngine,沒有辦法設置狀態。所以考慮後端解決。

if(session("act_last_time") != ''){
 if(floor( (time()-(int)session("act_last_time")) % 86400 / 60) <1 ){
  $this->error("對不起,一分鐘之內不能頻繁提交!", U('Wap/MyAct/list'), 5);
 }
}else{
 $t = (int)time();
 echo $t;
 $_SESSION("act_last_time", $t);
}

後端解決不怎麼友好,但絕對有效。即對提交頻率進行控制。我這裡設置的是1分鐘。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved