判断是否登录PHP,通常可以通过以下几种方式:

1、使用session
在用户登录成功后,将用户信息存储在session中,然后在需要判断是否登录的地方,检查session中是否有用户信息。
// 用户登录成功,存储用户信息到session
session_start();
$_SESSION['user'] = $user;
// 判断是否登录
session_start();
if (isset($_SESSION['user'])) {
echo "已登录";
} else {
echo "未登录";
}
2、使用cookie
在用户登录成功后,将用户信息存储在cookie中,然后在需要判断是否登录的地方,检查cookie中是否有用户信息。
// 用户登录成功,存储用户信息到cookie
setcookie("user", $user, time()+3600);
// 判断是否登录
if (isset($_COOKIE['user'])) {
echo "已登录";
} else {
echo "未登录";
}
3、使用数据库
在用户登录成功后,将用户的登录状态更新到数据库中,然后在需要判断是否登录的地方,查询数据库中的登录状态。
// 用户登录成功,更新数据库中的登录状态
mysqli_query($conn, "UPDATE users SET is_logged = 1 WHERE id = $userId");
// 判断是否登录
$result = mysqli_query($conn, "SELECT is_logged FROM users WHERE id = $userId");
$row = mysqli_fetch_assoc($result);
if ($row['is_logged'] == 1) {
echo "已登录";
} else {
echo "未登录";
}
相关问题与解答:
Q1: 如果使用session判断是否登录,如何设置session的过期时间?
A1: 可以在session_start()之后,使用session_set_cookie_params()函数设置session的过期时间,设置session过期时间为1小时:
session_start(); session_set_cookie_params(3600);
Q2: 如果使用cookie判断是否登录,如何设置cookie的过期时间?
A2: 可以在setcookie()函数中,设置cookie的过期时间,设置cookie过期时间为1小时:
setcookie("user", $user, time()+3600);
Copyright © 2009-2022 www.wtcwzsj.com 青羊区广皓图文设计工作室(个体工商户) 版权所有 蜀ICP备19037934号