php防止重復提交
Ⅰ 在用php做小頁面,有個表單.每次刷新頁面時老是提示不要重復提交表單怎樣去掉這個提示啊
首先,為什麼會出現這個問題?假設你在a.html有一個表單<form>....</form>,首先我們要理解瀏覽器這樣做的用意:如果我們刷新這個網頁,你表單填寫的內容可能會被reset。如果你的表單是長長的填寫了很多內容,你當然不希望重頭再來,就這點而言,瀏覽器的提示沒有惡意。我們要做的就是告訴瀏覽器:放心刷新。這也是解題的思路:在刷新時把表單撤了。當然,我的情況可能和你的不同,我寫的是彈窗式的登錄頁面,所以,我用Jquery寫了個Load(「b.html」),b.html里只有一個<form>。這樣做就可以保證a.html里沒有<form>。只有你的網頁里有<form>,chrome就會提示「重新提交表單」。這個情況在IE,FF則不會出現。
這是我遇到的情況,希望對你有啟發。
Ⅱ php 按照ip和提交時間防重復提交
你需要存儲IP和其上次訪問時間的對應關系。可以選擇資料庫、memcache。
為了簡便,我這里用文件做一個示例:
<?php
$ip=get_client_ip();//沒有定義這個函數
$ipfile='ip'.$ip;
if(is_file($ipfile)){
$timestamp=(int)file_get_contents($ipfile);
if(time()-$timestamp<60){
print'動作太快了,親!'
exit(0);
}
}
//其他代碼
實際使用時最好不要用文件來存儲。
Ⅲ thinkphp 防止重復提交數據。
親,你可以加驗證碼驗證啊!~~
第一次產生驗證碼,然後驗證完成後就將驗證碼更新掉,這樣他再提交驗證碼就錯誤了,驗證碼錯誤就不讓他提交,直接轉向就好了!~~
驗證碼是防止重復提交的一個簡單的方式,目前還是比較有效的!~~
而且tp生成驗證碼很簡單,驗證也很方便的!~~
具體可以參考文檔這里:http://document.thinkphp.cn/manual_3_2.html#verify
希望對你有幫助,如果有幫助,記得採納喲!~~
Ⅳ php如何避免刷新頁面重復提交
可以採用ajax配合使用php可以防止刷新頁面重復提交
也可以使用框架同樣可以防止
你直接訪問數據處理頁面的時候,$_POST['title'],$_POST['num] 應該是空值,所以你增加一個判斷,必須有具體的值,再進行sql操作。
Ⅳ 誰用過ThinkPHP,關於防止表單重復提交
thinkphp支持表單令牌驗證功能,可以有效防止表單的重復提交等安全防護。
請參考開發手冊:http://document.thinkphp.cn/manual_3_2.html#form_token
Ⅵ php手機表單提交後防止點返回重復下單
你可以在表單中添加一個隱藏欄位,一般叫做hash欄位,內容可以是當前時間(毫秒)的md5值,並且將這個值記錄到session中,如果用戶提交了,session中存在這個值,則在session中注銷這個值,這個時候是第一次提交。如果session中不存在這個值,表示這次是重復提交了,你就可以跳過這次的保存了。
Ⅶ 有沒有簡單的方法防止網頁刷新等導致數據重復提交到資料庫,求詳細代碼,謝謝!!!
防止網頁刷新導致數據重復提交,可以在表單中添加Token令牌機制,這即保證了安全性(防CSRF攻擊),又能夠驗證重復提交,每次生成表單頁面時,會生成一個Token,在每次提交數據時,都要求檢查Token,通過token檢驗合法的請求,可以多去看看實戰教程。