本文目錄一覽:
- 1、php怎麼獲取當前登陸的用戶名?要具體的詳細代碼。求助!謝謝!
- 2、php 登錄後,如何在其他頁面獲取登錄者信息
- 3、php微信開發獲取用戶信息
- 4、php怎麼做用戶登錄之後獲取相應的用戶信息?
- 5、PHP獲得當前登錄用戶ID,詳細代碼寫法
- 6、php 怎麼知道獲取所以當前在線用戶
php怎麼獲取當前登陸的用戶名?要具體的詳細代碼。求助!謝謝!
一般用會話(SESSION)來判斷是否登錄,以及登錄用戶名等信息。
//登錄頁面
?php
session_start();
if($_POST[‘user’]==$user $_POST[‘pwd’]=$pwd){
//如果登錄成功,生成對應的會話值。
$_SESSION[‘logined’]=1; //判斷是否已經登錄的依據。
$_SESSION[‘user’]=$user; //記錄當前登錄用戶。
}else{
echo “登錄失敗,不記錄SESSION值”;
}
?
//另一個頁面
?php
session_start();
//檢測是否登錄
if(isset($_SESSION[‘logined’]) $_SESSION[‘logined’]){
//$_SESSION[‘logined’]有設置,並且值為真,表示已經登錄
echo “當前登錄用戶是: “.$_SESSION[‘user’];
}
?
SESSION是代表會話值,他的生存時間是瀏覽器打開的周期,就是說瀏覽器一旦關閉,會話值就會消失。並且會話值有個個特點就是,在會話值生命周期內,同一個域名的頁面能夠訪問該域名產生的會話值,例如,百度知道頁面產生的會話值,那麼在新打開的百度百科頁面也能訪問。
php 登錄後,如何在其他頁面獲取登錄者信息
登陸後存一個 $_SESSION[‘username’] ,或者乾脆存一個角色許可權的Session ,然後在頁面判斷這個session是否符合許可權。
哦,醬紫啊,那你要麼用文件作緩存,要麼用資料庫,來存這個用戶的uid和name好了啊
php微信開發獲取用戶信息
獲取用戶信息一般基於兩種方式,不過首先都要獲取用戶的openid,用戶的openid是用戶對應公眾號的唯一標識
第一種:用戶發送信息給公眾號的時候,fromuser這個欄位會包含用戶的openid
第二種:使用auth2.0許可權,首先需要進入微信公眾號的官方後台,設置一下域名,然後組裝一個類似;redirect_uri=REDIRECT_URIresponse_type=codescope=SCOPEstate=STATE#wechat_redirect
這樣的URL,APPID 需要換成公眾號的APPID,REDIRECT_URI需要換成你需要或許用戶信息的頁面,SCOPE如果設置為snsapi_base,不用彈出授權,但是也無法獲得昵稱等信息,如果設置為snsapi_userinfo,則會彈出一個確定的界面,在用戶體驗上不是很好。如果還有其他問題,可以追問!
php怎麼做用戶登錄之後獲取相應的用戶信息?
登錄:
根據用戶輸入的用戶名和密碼,在資料庫中進行查找。如果資料庫中有記錄,說明用戶名和密碼輸入正確。然後將用戶ID保存到Session中。後期如果要調用,當前登錄的用戶信息,只需要使用session中的用戶ID。在資料庫中查找返回即可
PHP獲得當前登錄用戶ID,詳細代碼寫法
/*
獲取用戶信息,首先是根據條件來查找用戶
$_SERVER[“user_id”] 登陸保存user_id保存到session
$_SERVER[“user”] 登陸保存用戶到session
*/
“select * from user where id='”.$_SERVER[“user_id”].”‘ and user ='”.$_SERVER[“user”].”‘” ;
/*
更新用戶信息首先是要查找出這個用戶信息
查找的時候必須傳遞id參數過去,否則無法找到對應的用戶
*/
“select * from user where id='”.$_GET[“user_id”].”‘” ; // 可以不用根據id來做判斷,但是判斷的內容必須是唯一的
/*
最後修改完信息後通過表單提交的內容也要帶能唯一識別用戶的參數,(例如:id)
*/
“update user set face='”.$_POST[“user_icon”].”‘ where id='”.$_POST[“user_id”].”‘”
都是手寫的,用的好記得採納哦,還有不懂的可以繼續追問。
php 怎麼知道獲取所以當前在線用戶
使用mysql內存表或者內存性nosql
如果表,表結構: id(自增ID),username(用戶名),addtime(添加時間),updatetime(更新時間)
設定超時時間為20分鐘。那麼在線用戶為
select count() from tbl where updatetime=(NOW()-2060);
如果是nosql(redis為例),那麼就更簡單了
每個用戶添加一個key,可以用usename的hash值,然後設置這個key的過期日期為20分鐘。
獲取時,只需要執行$redis-keys(“session_*”);獲取所有用戶
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/243936.html