首頁 >後端開發 >PHP問題 >php怎麼限定使用者只能提交一次

php怎麼限定使用者只能提交一次

藏色散人
藏色散人原創
2021-09-24 09:55:122420瀏覽

php限定用戶只能提交一次的實作方法:1、透過「$ip=getenv('REMOTE_ADDR');」取得ip,並使用ip進行限制;2、在客戶端的瀏覽器保存一個有效期限一天的COOKIE即可。

php怎麼限定使用者只能提交一次

本文操作環境:Windows7系統、PHP7.1版、Dell G3電腦。

php怎麼限定使用者只能提交一次?

php限定post次數,例如一天只能post一次:

第一,使用IP限制的話,你只能獲得對方用戶的外網IP,那麼網咖裡面所有電腦的IP是相同的,一天之內這個網咖只有一台電腦可以提交。如果你的客戶主要是家庭用戶,那麼可以使用IP限制,否則IP限制會把許多無辜的人限制了。

取得IP的方法:

$ip=getenv('REMOTE_ADDR');

IP限制還是可以破的,家庭寬頻用戶斷往重新撥號,會得到新的IP。

再次確認,伺服器無法取得192.1.1.100這樣的內網IP位址的。

第二,除了IP之外,還可以使用COOKIE限制,在客戶端的瀏覽器保存一個有效期一天的COOKIE,程式偵測COOKIE進行限制。這個方法可以解決IP限制對網咖限製過嚴的問題,但無法解決聰明的客戶自己清除瀏覽器COOKIE的方法。

設定有效期限一天的COOKIE的方法:

setcookie("TestCookie", $value, time()+24*3600);

以上兩個方法都各有千秋,你可以結合起來做一個稍微更合理的,但是都不可能完美。

相關介紹:

cookie 常用於辨識使用者。 cookie 是一種伺服器留在使用者電腦上的小檔案。每當同一台電腦透過瀏覽器請求頁面時,這台電腦將會傳送 cookie。透過 PHP,您能夠建立並取回 cookie 的值。

setcookie() 函數用於設定 cookie。

註解:setcookie() 函數必須位於 100db36a723c770d327fc0aef2ce13b1 標籤之前。

語法

setcookie(name, value, expire, path, domain);

推薦學習:《PHP影片教學

以上是php怎麼限定使用者只能提交一次的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn