同一會員賬號限制在同一臺設備(電腦、手機、Ipad等)上單點登錄,重復登錄后,原登錄訪問頁面時則直接跳轉到登錄頁面且需要重新登錄才能正常訪問。
原理分析A賬號在A電腦上登錄后,A賬號此時又用B電腦再次登錄,則A電腦請求頁面時,提示“重新登錄”的信息,并跳轉到登錄頁面
思路解析:A賬號在A電腦上登錄后,把SESSION ID寫入TXT文件,每次訪問頁面時,都做一次校驗(比較txt文件的值是否和當前登錄的session_id的值相同)
實例1、入口與校驗(index.php)
?phpsession_start();$uid = 10;if(is_login($uid)){ header( location:loginSuccess.php }else{ $getLogSessionId = file_get_contents( session_log/ .$uid. .txt if($getLogSessionId){ echo 已在其他地方登錄,請重新登錄 echo br echo 5秒后跳轉到登錄頁面! header( refresh:5;url=login.php }else{ echo 第一次登錄... echo br echo 3秒鐘后跳轉到登錄頁面! header( refresh:3;url=login.php * 通過登錄時寫入文件session_id和當前登錄設備后生成的session_id進行比較,相同則是同一臺設備登錄,不同則在別的地方登錄function is_login($uid){ $getLogSessionId = file_get_contents( session_log/ .$uid. .txt if($getLogSessionId == session_id()){ return true; }else{ return false;}
2、登錄(login.php)
?phpsession_start();echo 登錄中.... echo br $uid = 10;file_put_contents( session_log/ .$uid. .txt ,session_id());echo 登錄完成
3、登錄成功(loginSuccess.php)
?phpecho 我登錄成功了!
4、保存sessionId文件夾(session_log),測試代碼,需要手動建一個或者賦予自動生成文件的權限
相關推薦:
php bootstrap實現簡單登錄,phpbootstrap登錄
php模擬登錄 php curl模擬登錄教程大全以上就是PHP實現會員賬號只能唯一登錄的代碼實例的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答