亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在php項目中防止同一用戶多次登錄

發布時間:2021-03-04 17:37:59 來源:億速云 閱讀:148 作者:Leah 欄目:開發技術

如何在php項目中防止同一用戶多次登錄?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

php有什么用

php是一個嵌套的縮寫名稱,是英文超級文本預處理語言,它的語法混合了C、Java、Perl以及php自創新的語法,主要用來做網站開發,許多小型網站都用php開發,因為php是開源的,從而使得php經久不衰。

【解決方案】
(1) 每次登錄,身份認證成功后,重新產生一個session_id。

session_regenerate_id(); 
session_register ("username") ;

(2) 在用戶數據庫中開一個sessionid字段,重新產生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>登錄成功,正在跳轉!</font>" ; 
header ("Location:$url");

(5) 在需要跳轉的頁面,起始處加入
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項目中防止同一用戶多次登錄問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

焦作市| 梓潼县| 赤水市| 乌拉特前旗| 阳谷县| 姚安县| 伊金霍洛旗| 玛纳斯县| 临汾市| 南宁市| 慈利县| 德化县| 延津县| 昭通市| 大同县| 勐海县| 阜南县| 石柱| 和平县| 威海市| 宜君县| 浦县| 同江市| 滦南县| 铁力市| 安西县| 新平| 错那县| 赫章县| 鹤山市| 托克逊县| 桃园县| 周宁县| 广丰县| 永济市| 申扎县| 贵德县| 双江| 昌邑市| 贵定县| 周至县|