本文目录一览:
1、php怎么获取当前登陆的用户名?要具体的详细代码。求助!谢谢!
2、[php 登录后,如何在其他页面获取登录者信息](#php 登录后,如何在其他页面获取登录者信息)
3、php微信开发获取用户信息
4、php怎么做用户登录之后获取相应的用户信息?
5、PHP获得当前登录用户ID,详细代码写法
6、[php 怎么知道获取所以当前在线用户](#php 怎么知道获取所以当前在线用户)
php怎么获取当前登陆的用户名?要具体的详细代码。求助!谢谢!
一般用会话(SESSION)来判断是否登录,以及登录用户名等信息。
// 登录页面
session_start();
if ($_POST['user'] == $user && $_POST['pwd'] == $pwd) {
// 如果登录成功,生成对应的会话值。
$_SESSION['logined'] = 1; // 判断是否已经登录的依据。
$_SESSION['user'] = $user; // 记录当前登录用户。
} else {
echo "登录失败,不记录SESSION值";
}
// 另一个页面
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_URI&response_type=code&scope=SCOPE&state=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()-20*60);
如果是nosql(redis为例),那么就更简单了。
每个用户添加一个key,可以用username的hash值,然后设置这个key的过期日期为20分钟。
获取时,只需要执行 $redis->keys("session_*");
获取所有用户。