欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php有效防止同一用戶多次登錄

 更新時間:2015年11月19日 11:11:02   投稿:lijiao  
這篇文章主要介紹了php有效防止同一賬號同一時間多次登錄的方法,感興趣的小伙伴們可以參考一下

【問題描述】:同一用戶在同一時間多次登錄如果不能檢測出來,是危險的。因為,你無法知道是否有其他用戶在登錄你的賬戶。如何禁止同一用戶多次登錄呢?
【解決方案】
(1) 每次登錄,身份認(rèn)證成功后,重新產(chǎn)生一個session_id。

session_regenerate_id(); 
session_register ("username") ; 

(2) 在用戶數(shù)據(jù)庫中開一個sessionid字段,重新產(chǎn)生session_id后,都更新該字段。

$sessionid = session_id(); 
$db = new PDO('sqlite:softToken.db'); 
$sql = "update userinfo set sessionid ='$sessionid' where username='$username' and passwd='$passwd';"; 
$query = $db->prepare($sql); 
$query->execute(); 

(3) 建立一個session保存用戶名

$_SESSION["username"] = $username; 

(4) 利用url重寫,傳遞session_id

$url = "main.php?sid=".session_id(); 
unset($db); 
echo "<font color=blue>登錄成功,正在跳轉(zhuǎn)!</font>" ; 
header ("Location:$url"); 

(5) 在需要跳轉(zhuǎn)的頁面,起始處加入
main.php

<?php 
header('Content-type:text/html; charset=utf-8'); 
$sessionid = $_GET['sid']; 
session_id($sessionid); 
session_start (); 
$username = $_SESSION["username"]; 
$db = new PDO('sqlite:softToken.db'); 
$sql = "select * from userinfo where username='$username' and sessionid='$sessionid';"; 
$query = $db->prepare($sql); 
$query->execute(); 
$user = $query->fetch(PDO::FETCH_OBJ); 
 
if ($user->username == ""){ 
session_destroy(); 
echo "<script language='javascript' type='text/javascript'>" ; 
echo "window.location.href = 'index.html';" ; 
echo "</script>" ; 
exit () ; 
} 
?> 
 
<html> 
<body> 
...... 
</body> 
</html>

以上就是php有效防止同一賬號同一時間多次登錄的解決方案,希望對大家解決同一賬號同一時間多次登錄問題有所幫助。

相關(guān)文章

  • PHP進行批量任務(wù)處理不超時的解決方法

    PHP進行批量任務(wù)處理不超時的解決方法

    這篇文章主要介紹了PHP進行批量任務(wù)處理不超時的解決方法,結(jié)合實例形式簡單分析了php結(jié)合ajax進行異步處理實現(xiàn)批量任務(wù)不超時的相關(guān)技巧,需要的朋友可以參考下
    2016-07-07
  • 簡單談?wù)凱HP中的trait

    簡單談?wù)凱HP中的trait

    自PHP5.4.0起,PHP實現(xiàn)了一種代碼復(fù)用的方法,稱為Trait。因為PHP是單繼承,當(dāng)你需要多個區(qū)別的特性,就不得不去組合多個基類,Trait出現(xiàn)后就避免了這些問題,Trait的優(yōu)勢就是可以隨意組合,而且代碼清晰。本文主要介紹了關(guān)于PHP中的trait,需要的朋友可以參考下。
    2017-02-02
  • SWFUpload與CI不能正確上傳識別文件MIME類型解決方法分享

    SWFUpload與CI不能正確上傳識別文件MIME類型解決方法分享

    問題:swfupload上傳任何文件的mime類型均為application/octet-stream。
    2011-04-04
  • PHP文件操作實現(xiàn)代碼分享

    PHP文件操作實現(xiàn)代碼分享

    PHP中提供了一系列的I/O函數(shù),能簡捷地實現(xiàn)我們所需要的功能,包括文件系統(tǒng)操作和目錄操作(如“復(fù)制[copy]”)。下面給大家介紹的是基本的文件讀寫操作:(1)讀文件;(2)寫文件;(3)追加到文件。
    2011-09-09
  • PHP 模擬登陸功能實例詳解

    PHP 模擬登陸功能實例詳解

    這篇文章主要介紹了PHP 模擬登陸功能,結(jié)合實例形式詳細分析了php基于curl的模擬表單登陸及session信息存儲相關(guān)操作技巧,需要的朋友可以參考下
    2019-09-09
  • 深入探究PHP的多進程編程方法

    深入探究PHP的多進程編程方法

    這篇文章主要介紹了深入探究PHP的多進程編程方法,同時介紹了Windows系統(tǒng)下的多線程嘗試,是PHP并發(fā)實現(xiàn)方面的重要內(nèi)容,需要的朋友可以參考下
    2015-08-08
  • php版微信公眾平臺回復(fù)中文出現(xiàn)亂碼問題的解決方法

    php版微信公眾平臺回復(fù)中文出現(xiàn)亂碼問題的解決方法

    這篇文章主要介紹了php版微信公眾平臺回復(fù)中文出現(xiàn)亂碼問題的解決方法,涉及php字符串編碼轉(zhuǎn)換的相關(guān)操作技巧,需要的朋友可以參考下
    2016-09-09
  • 封裝一個PHP可控限速下載文件的方法

    封裝一個PHP可控限速下載文件的方法

    這篇文章給大家介紹了封裝一個PHP可控限速下載文件的方法,文章通過代碼示例介紹的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-10-10
  • PHP setcookie() cannot modify header information 的解決方法

    PHP setcookie() cannot modify header information 的解決方法

    PHP setcookie() 報 cannot modify header information 錯誤的解決方法
    2009-01-01
  • 如何讓PHP編碼更加好看利于閱讀

    如何讓PHP編碼更加好看利于閱讀

    在本篇文章里小編給大家分享了關(guān)于如何讓PHP編碼更加好看利于閱讀的方法和習(xí)慣,需要的朋友們可以學(xué)習(xí)下。
    2019-05-05

最新評論