我在 PHP 中创建了一个有效的登录和注册页面,但遇到了问题。我不知道如何获取登录到他们计算机的人的 ID。我如何在哪里跟踪谁在哪台计算机上登录并向他们显示信息?
例如,在 Facebook 上,它总是知道你是谁,并显示你一个人应该看到的内容,但这是如何完成的呢?它如何跟踪这一点?如果这很难理解,我很抱歉,但我无法真正解释。
会话是一种存储跨多个页面使用的信息(以变量的形式)的方式。
<?php
// this line starts the session and must be present in any page where you need to set or retrieve a session variable
session_start();
// this sets variables in the session
$_SESSION['userid']='123'; //obv it will be dynamic
// this retrieves the value set earlier
echo $_SESSION['userid'];
?>
因此,您可以检查每个页面是否userid
存在database
您可以获取其记录。
您应该查看会话变量。PHP 会话变量用于存储有关用户会话的信息或更改用户会话的设置。会话变量保存有关单个用户的信息,并且可用于一个应用程序中的所有页面。
当他们登录时,您为他们的用户名(或您想要的任何变量)设置会话变量,然后当他们更改页面时,您查找会话变量,获取他们的用户名并显示相关数据。当他们注销时,您会破坏会话变量。如果他们加载页面并且会话变量不存在,则他们没有登录。
这是一个简短的教程: http ://www.tizag.com/phpT/phpsessions.php
注册站点时会分配一个唯一的用户 ID,因此当用户登录时会请求此用户 ID,并将用户会话分配给此 ID,这样可以轻松检索与当前用户相关的所有数据。看看用户会话..
HTTP 是一种无状态协议,这意味着它没有同一用户先前调用的任何历史记录。因此,为了在 HTTP 请求中引入上下文信息,UI/浏览器会发送一些信息来唯一标识每个用户。
所以服务器组件(Java/PHP)通过这些额外的信息来识别用户。当然,它是通过 DB 的帮助找到的。