[英]PHP: Sessions to check if user is logged on
大家好,我目前正在开发一个具有登录和注册页面的移动应用程序。 我已经设置了登录和注册页面,并且效果很好。
包含user credentials
的表具有以下字段:
username, fname, lname, password, logged_status
当用户“登录”时,应将该用户的状态设置为“登录”。 我怎样才能做到这一点?
**请注意,我的android应用程序连接到Web服务器,该Web服务器运行不同的PHP文件,具体取决于所执行的功能(例如,如果用户要登录,则login.php文件在服务器上执行*
除了使用PHP端使用android端并使用SharedPreference登录存储外,还有许多可用示例,这样您的用户只要进入应用程序就可以显示为已登录状态,除非他从应用程序注销。
使用0和1标志使logged_status
状态enumerated
dataType,默认为0。
当用户成功登录时,更新logged_status
<?php
$stmt = $dbh->prepare("SELECT * FROM users WHERE email = ?");
$stmt->execute([$_POST['email']]);
$row = $stmt->fetch();
if ($row && password_verify($_POST['password'], $row['pass']))
{
//update logged_status status
$update = $dbh->prepare("UPDATE users SET logged_status ='1' where email= ?");
if($update->execute([$_POST['email']])){
// set sessions and redirect
}
} else {
echo "invalid";
}
?>
正如Aniket所建议的那样,如果您使用android而不是php会更好。
您可以使用布尔值表示登录状态,以便在用户登录时可以将值设置为1进行登录,而在注销时将其设置为0表示未登录。
但最好在android端编写一个函数,该函数不断在服务器上调用php脚本以更新状态,以便如果用户长时间不活动,其状态将变为不在表中登录。
让我知道你的想法
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.