一、会话控制
  • 为了使得网站可以跟踪客户端与服务器之间的交互,保存和记忆每个用户的身份和信息,我们需要一种强有力的解决方案,这样就产生了会话控制。
  • HTTP是一个无状态的协议,此协议无法来维护两个事务之间的联系。
  • 当一个用户请求一个页面后再请求另外一个页面时,HTTP无法告诉我们这两个请求是来自同一个人。
  • 会话控制思想就是能够在网站中跟踪一个变量,我们可以跟踪变量,就可以做到对用户的支持,并根据授权和用户身份显示不同内容,不同页面。
 
二、什么是cookie?
  • cookie是在http协议下,服务器或脚本可以维护客户端信息的一种方式。
  • cookie是web服务器保存在用户浏览器上的小甜饼(一个很小的文本文件),她可以包含有关用户的信息,常用于保存用户名,密码,个性化设置,个人偏好记录等。
  • 当用户访问服务器时,服务器可以设置和访问cookie的信息。
  • cookie保存在客户端,通常是IE或Firefox浏览器的cookie临时文件夹中,可以手动删除。
  • Cookie是利用了网页代码中的HTTP头信息进行传递的,浏览器的每一次网页请求,都可以伴随Cookie传递
  • 注意:如果浏览器上cookie 太多,超过了系统所允许的范围,浏览器也会自动对它进行删除。
 
三、设置cookie
  • bool setcookie(string name,[string value,[int expire,[string path,[string domain,[int secure]]]]]);
    • name   设置cookie的名字.(必须)
    • value 设置cookie的值.
    • expire 设置cookie的过期时间和日期,用一个标准的Unix时间标记,可以用time()函数取得,以秒为单位.
    • 可选参数path, domain, secure
      • path :服务器端的有效路径,设置为“/”表示这个域中所有目录都可以被访问读取。
      • domain :设定cookie有效域名
      • secure :设置是否仅在https安全连接时才发送cookie到客户端,0或1。
  • 例子:

    setcookie("user","tangcaiye",time()+60*60);
 

四、接收和使用cookie

  • PHP对cookie有很好的支持,和form表单一样,在接收的时候PHP会自动从web服务器接收HTTP头并且分析它。接收的时候和表单接收一样
  • 例子:

    echo $_COOKIE["username"];
 
五、删除Cookie
要删除一个已经存在的cookie,有两个办法:
  • 调用只带有name参数的setcookie,那么名为这个cookie将被从客户机上删除;
    • 例子:

      setcookie(“MyCookie”);
  • 设置Cookie的失效时间为time()或time()-1
    • 例子:

      setcookie("username","admin",time()-1);
    • 注意:
      • time()减多少没有关系,只要是过期时间就行,那么这个Cookie在这个页面的浏览完之后就被删除了 (其实是失效了)。
      • 当一个Cookie被删除时,它的值在当前页仍然有效。
      • 如果要把cookie设置成在浏览器关闭后就失效。那么可以直接把expiretime设为0, 或者不设置此值。例:setcookie("name","value",0)。
 
 
 

会话跟踪技术——cookie的更多相关文章

  1. 简述会话跟踪技术——Cookie和Session

    简述会话跟踪技术--Cookie和Session 本篇文章将会简单介绍Cookie和Session的概念和用法 会话跟踪技术 首先我们需要搞清楚会话和会话跟踪的概念: 会话:用户打开浏览器,访问Web ...

  2. 会话跟踪技术 - Cookie 和 Session 快速上手 + 登陆注册案例

    目录 1. 会话跟踪技术概述 2. Cookie 2.1 Cookie的概念和工作流程 2.2 Cookie的基本使用 2.3 Cookie的原理分析 2.4 Cookie的使用细节 2.4.1 Co ...

  3. Cookie&Session会话跟踪技术

    今日内容学习目标 可以响应给浏览器Cookie信息[response.addCookie()] 可以接受浏览器Cookie信息[request.getCookies()] [创建cookie,设置pa ...

  4. 会话跟踪之Cookie技术

    1. Cookie会话跟踪技术介绍 会话跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,可以在客户 ...

  5. 会话跟踪session cookie

    会话跟踪 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在 ...

  6. Javaweb学习笔记——(十一)——————JSP、会话跟踪、Cookie、HttpSession

    JSP1.什么是JSP jsp即java server pages,它是Javaweb的动态资源. jsp = html + java脚本 + jsp动态标签(包含EL表达式)2.JSP中java脚本 ...

  7. Java Web程序设计笔记 • 【第8章 会话跟踪技术进阶】

    全部章节   >>>> 本章目录 8.1 Session机制 8.1.1 Session 简介 8.1.2 创建 HttpSession 实例 8.1.3 HttpSesiso ...

  8. cookie和session的区别与会话跟踪技术

    会话跟踪技术: HTTP是一种无状态协议,每当用户发出请求时,服务器就会做出响应,客户端与服务器之间的联系是离散的.非连续的.当用户在同一网站的多个页面之间转换时,根本无法确定是否是同一个客户,会话跟 ...

  9. JavaEE基础(04):会话跟踪技术,Session和Cookie详解

    本文源码:GitHub·点这里 || GitEE·点这里 一.会话跟踪 1.场景描述 比如登录某个购物网站,身份识别成功后,在网站下单,支付 等操作,这些操作中当前登录用户信息必须是共享的,这样这些操 ...

随机推荐

  1. Light oj 1197 - Help Hanzo (素数筛技巧)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1197 给你a和b求a到b之间的素数个数. 先在小区间素数筛,大区间就用类似素数筛的想法 ...

  2. react-native 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。

    Q: A:

  3. ERP存储过程

    [dbo].[st_MES_MonitorMachine] -------------------------------------------- USE [ChiefMESNew]GO /**** ...

  4. java中需要关注的3大方面内容/Java中创建对象的几种方法:

    1)垃圾回收 2)内存管理 3)性能优化 Java中创建对象的几种方法: 1)使用new关键字,创建相应的对象 2)通过Class下面的new Instance创建相应的对象 3)使用I/O流读取相应 ...

  5. BZOJ 2763: [JLOI2011]飞行路线 最短路

    2763: [JLOI2011]飞行路线 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/pr ...

  6. poj 3613 Cow Relays

    Cow Relays Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5411   Accepted: 2153 Descri ...

  7. Android内存优化解决 资料和总结的经验分享

    在前公司做一个图片处理的应用时, 项目交付的时候,客户的手机在运行应用的时候,一直在崩溃,而这个异常就是OutOfMemory的错误,简称为OOM, 搞得我们也是极其的崩溃,最后 ,我们是通过网上搜集 ...

  8. Spring中ClassPathXmlApplicationContext类的简单使用

    转自:http://www.cnblogs.com/shyy/archive/2011/09/29/2453057.html 一.简单的用ApplicationContext做测试的话,获得Sprin ...

  9. jquery datatable隐藏字段获取

    如下,假Xpath为隐藏列,单击某一行时获取 $('#MessPropGrid tbody').on('click', 'tr', function () { tXpath=$("#Mess ...

  10. nginx 学习八 高级数据结构之基数树ngx_radix_tree_t

    1 nginx的基数树简单介绍 基数树是一种二叉查找树,它具备二叉查找树的全部长处:检索.插入.删除节点速度快,支持范围查找.支持遍历等. 在nginx中仅geo模块使用了基数树. nginx的基数树 ...