web之会话
1,什么是会话控制
- HTTP是无状态的协议,即HTTP协议是没有一个内建的机制来维护两个事务之间的状态。当一个用户请求一个页面后再请求另一个页面,HTTP将无法告诉我们这两个请求来自同一个用户。
- 如果我们可以根据一个会话来跟踪用户,那么就很容易做到对用户登陆的支持,并根据授权级别和个人喜好显示相应的内容,并根据会话控制纪录该用户的行为。
2,基本的会话功能
- PHP的会话是通过唯一的ID来驱动的,会话ID是一个加密的随机数字。
- 会话ID由PHP声称,在会话的生命周期中都会保存在客户端。
- 它在客户端存在的形式:保存在用户机器里的cookie,或者通过URL在网络上传递。
- 有一些网站,它们将会话ID保存到URL中,如果URL中有一串看起来象随机数字的字符串,可能它就是某种形式的会话控制。
- cookie也解决了多个事务间保持状态的问题,同时它还可以帮助保持一个整洁的URL。
- 会话ID就像一把钥匙,允许我们注册一些特定的变量,称为会话变量。
- 会话变量的内容保存在服务器端,而会话ID是用户唯一可见的信息。
- 即在一个特定的网站连接中,客户端可以通过cookie或URL看到会话ID,而我们就可以访问该ID指定的会话保存在服务端上的会话变量。
2.1,什么是cookie
- cookie是一小段信息,可以由脚本在客户端机器保存。
- 可以通过发送一个包含特定数据并且具有如下格式的HTTP标题头,在用户端机器设置一个cookie:
- set-cookie: NAME=VALUE; [expires=DATE;][path=PATH;][domain=DOMAIN_NAME;][secure]
- 当浏览器连接一个URL时,首先要搜索当地保存的cookie。如果有任何与正在连接的URL相关的cookie,浏览器将它提交到服务器。
3,实现简单的会话
基本步骤如下:
I、开始一个会话;
II、注册会话变量
III、使用会话变量
IV、注销变量并销毁会话。
这些步骤不一定都要发生在同一个脚本中,其中的一些步骤可以在多个脚本中发生。
没有评论:
发表评论