PHP 会话控制

什么是会话控制


会话控制是一种面向连接的可靠通信方式,通常根据会话控制记录判断用户登录的行为。例如,当我们登录某个邮箱系统以后,可以在其中完成查看邮件、收信、发信等操作,这些操作有可能需要访问多个页面来完成。

在同一个系统上,多个页面之间互相切换时,还能保持用户的登录状态,并且访问的都是用户自己的信息。这种能够在网站中跟踪一个用户,并且可以处理在同一个网站中同一个用户在多个页面共享数据的机制,都需要使用会话控制的思想完成。

会话控制作用


HTTP 协议是 WEB 服务器与浏览器相互通信的协议,它是一种无状态协议,即每个 HTTP 请求之间是相互独立的。因此,HTTP 协议没有一个内建的机制来维护两个事务之间的状态。比如,当一个用户在请求一个页面后再去请求另外一个页面时,HTTP 将无法告诉我们这两个请求是否来自同一个用户。

在网站中,我们经常需要跟踪一个变量:通过对变量的跟踪,使多个请求事物之间建立联系,再根据授权和用户身份显示不同的内容、不同页面。这就是会话控制技术。

会话控制方法


由于 HTTP 是无状态的协议,所以不能维护两个事务之间的状态。PHP 系统为了防止这种情况的发生,提供了如下三种网页之间传递数据的方法。

  • 使用超链接或者 header() 函数,并在 URL 的 GET 请求中附加参数的形式,将数据从一个页面转向另一个 PHP 脚本中。也可以通过网页中的各种隐藏表单来储存使用者的资料,并将这些信息在提交表单时传递给服务器中的 PHP 脚本;
  • 使用 Cookie 将用户的状态信息存放在浏览器中,并通过浏览器来存取 Cookie 中的信息;
  • 相对于 Cookie 还可以使用 Session,将访问者的状态信息存放于服务器之中,让其他程序能透过服务器中的文件或数据库,来存取使用者的信息。

查看笔记

扫码一下
查看教程更方便