php防止重複提交表單

2021-09-01 12:07:54 字數 918 閱讀 1804

解決方案一:引入cookie機制來解決

提交頁面**如下a.php**如下:

<?php

setcookie("onlypost", 't'); //設定cookie,可以帶上時間值。像有些論壇防止灌水就可以將你的一些基本資訊存放到裡面。

?>

處理頁面b.php**如下:
<?php

if($_cookie['onlypost'] == 't')

?>

如上處理的缺點:如果客戶端禁止了cookie,該方法將不起任何作用,這點請注意。

解決方案二:使用session(這個與jsp處理方法是一樣的)

利用php的session功能,也能避免重複提交表單。session儲存在伺服器端,在php執行過程中可以改變session變數,下次訪問這個變數時,得到的是新賦的值,所以,可以用乙個session變數記錄表單提交的值,如果不匹配,則認為是使用者在重複提交。

a頁面的**:

<?php

session_start(); //根據當前session生成隨機數

$code = mt_rand(0,1000000);

$_session['code'] = $code; //將此隨機數暫存入到session

?>b頁面:

<?php

session_start();

if(isset($_post['originator'])) else

}?>

解決方案三:在伺服器端做重定向處理

if (isset($_post['action']) && $_post['action'] == 'submitted')

php 防止表單重複提交

問題 解決 法1,表單資料提交後即進行頁面跳 具體如下 資料庫檔案 1create table form 2name char 50 not null3 表單檔案一form.php 1 form action form handle.php method post 2 input type name...

防止php表單重複提交

在php表單提交問題,經常發現 重新整理一下要讓你重新提交資料問題 如果解決這個問題需要引入乙個 cookie變數 來做 seesion 也行.例子1 t1.php form id form1 name form1 method post action t2.php p 說明 input type ...

防止表單重複提交

新增乙個使用者時,發現重複新增了4 5個,原來是重複提交了。怎麼解決這個問題呢,起初是在後端檢查新增的屬性是否已有,例如姓名和手機號是否重複,如果重複就不儲存,沒想到後來隨著業務的複雜化,新增乙個使用者所需時間越來越長,以致在檢查時還沒插入完畢。那就在提交時就關閉form,可是這樣一來,如果後端檢查...