最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP實現(xiàn)會員賬號單唯一登錄的方法分析

 更新時間:2019年03月07日 10:49:44   作者:JasonHome  
這篇文章主要介紹了PHP實現(xiàn)會員賬號單唯一登錄的方法,結(jié)合實例形式分析了php基于session與文件讀寫的單一用戶登陸限制實現(xiàn)技巧,需要的朋友可以參考下

本文實例講述了PHP實現(xiàn)會員賬號單唯一登錄的方法。分享給大家供大家參考,具體如下:

情景再現(xiàn)

同一會員賬號限制在同一臺設(shè)備(電腦、手機、Ipad等)上單點登錄,重復登錄后,原登錄訪問頁面時則直接跳轉(zhuǎn)到登錄頁面且需要重新登錄才能正常訪問。

原理分析

A賬號在A電腦上登錄后,A賬號此時又用B電腦再次登錄,則A電腦請求頁面時,提示“重新登錄”的信息,并跳轉(zhuǎn)到登錄頁面

思路解析:

A賬號在A電腦上登錄后,把SESSION ID寫入TXT文件,每次訪問頁面時,都做一次校驗(比較txt文件的值是否和當前登錄的session_id的值相同)

實例

1、入口與校驗(index.php)

<?php
session_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秒后跳轉(zhuǎn)到登錄頁面!";
  header("refresh:5;url=login.php");
 }else{
  echo '第一次登錄...';
  echo "<br>";
  echo "3秒鐘后跳轉(zhuǎn)到登錄頁面!";
  header("refresh:3;url=login.php");
 }
}
/**
* 通過登錄時寫入文件session_id和當前登錄設(shè)備后生成的session_id進行比較,相同則是同一臺設(shè)備登錄,不同則在別的地方登錄
*/
function is_login($uid){
 $getLogSessionId = file_get_contents('session_log/'.$uid.'.txt');
 if($getLogSessionId == session_id()){
  return true;
 }else{
  return false;
 }
}

2、登錄(login.php)

<?php
session_start();
echo "登錄中....";
echo '<br>';
$uid = 10;
file_put_contents('session_log/'.$uid.'.txt',session_id());
echo "登錄完成";

3、登錄成功(loginSuccess.php)

<?php
echo "我登錄成功了!";

4、保存sessionId文件夾(session_log),測試代碼,需要手動建一個或者賦予自動生成文件的權(quán)限

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php緩存技術(shù)總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《PHP錯誤與異常處理方法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家PHP程序設(shè)計有所幫助。

相關(guān)文章

最新評論

德庆县| 昆明市| 百色市| 区。| 北碚区| 正宁县| 密山市| 乌兰察布市| 屯留县| 甘肃省| 三台县| 舒城县| 齐齐哈尔市| 五寨县| 甘洛县| 莆田市| 武山县| 扶风县| 阆中市| 阿荣旗| 石棉县| 台安县| 江安县| 山西省| 合川市| 泗洪县| 岑巩县| 镶黄旗| 鄄城县| 香格里拉县| 五河县| 子洲县| 平顺县| 宁国市| 万全县| 乐清市| 保康县| 蒲江县| 石泉县| 柞水县| 博客|