有些时候感觉自己学习的效率好低,一套教程一本书,反复听,反复看,反复敲代码。自学这条路真的是很艰难,在任何事情都没有成功之前都很枯燥乏味。自学的过程中总会遇到很多问题,有时候连错误的原因都找不出来,那种委屈却又找不出地方宣泄,遇到问题上平台上去提问,把问题解决后才能安心的来发一篇文章。也不是为了博客而发博客,而是想在学习中留下一些回忆,原来这些技术是我通宵达旦才研究透的。

  我的文采不好,总结的不全,但是我始终相信天道酬勤;相信自己每发一篇帖子都会进步一次。上个月答应人道表哥5个月内挖50个CNVD,又加上电脑坏了,所以总共没法过几篇帖子。最近一个星期会更新面向对象以及数据库抽象层PDO的知识

------------------------------------------------------------------------------------------------------------------------------------------------------------------

===================

       会话控制

===================

一、会话控制的原因

  多个页面之间相互切换时,保持用户登录的状态,并且访问的都是自己登录的信息。

  可以处理在同一个网站中同一个用户在多个页面共享数据的机制。

二、cookie的应用

将数据保存到客户端 相对不安全(个人喜好信息  不太重要的信息)

传输数据 数据如果太多 速度下降

1、在客户端中设置cookie

setcookie() 函数向客户端发送一个 HTTP cookie。如果成功,则该函数返回true。否则返回false

语法:

setCookie(name,value,expire,path,domain,secure);
setCookie('cookie名称','cookie的值',cookie有效时间,cookie的有效路径,cookie的有效域名,是否只能在https协议下使用);

参数:

  描述
name 必需。规定 cookie 的名称。
value 必需。规定 cookie 的值。
expire 可选。规定 cookie 的有效期。
path 可选。规定 cookie 的服务器路径。
domain 可选。规定 cookie 的域名。
secure 可选。规定是否通过安全的 HTTPS 连接来传输 cookie。
 //将username的值传入给uname,保存客户端一周的时间
setCookie('uname','username',time()+60*60*24*7);
//将username的值传入给uname,保存客户端一周的时间,只在服务器的目录或子目录下有效,在test.com的域名或子域名下有效,参数为1,cookie尽在安全的链接中设置
setCookie('uname','username',time()+60*60*24*7,'/cookie','.test.com',1);

2、读取cookie中的资料

    超全局数组

echo $_COOKIE[cookie名称]

3、数组形态的cookie应用

  将多个内容值储存在相同的Cookie名称标识符下

 setCookie('user[username]','admin');              //设置为$_COOKIE['user']['username']
setCookie('user[password]',md5('123456')); //设置为$_COOKIE['user']['password']
setCookie('user[email]','123@163.com'); //设置为$_COOKIE['user']['email']

4、删除cookie

  删除与设置统一

setCookie('uname','username',time()-1); //把COOKIE设置为已过期的状态

三、Session的应用

Session将信息存储在服务器端(文件)

Session是基于cookie的,在使用session之前必须开启会话session_start();

1、将信息储存到session中

 Session_start();               //启动session的初始化
$_SESSION['uname'] = 'zhu'; //注册Session变量,赋值一个用户名称
$_SESSION['uid'] = 1; //注册Session变量,复制一个用户的ID

保存Session变量的文件  --> 变量名|类型:长度:值

uname|s:"zhu";uid|i:1

2、注销变量与销毁Session

 unset($_SESSION['uname']);    //删除Session变量
$_SESSION = array(); //将某个用户在Session中注册的变量全部清除

注意:array清空$_Session数组的同时也将对应的Session文件内容清空

     session_destory()函数,浙江这个用户对应的Session文件删除

四、思维导图

【代码总结】PHP之会话跟踪技术的更多相关文章

  1. django会话跟踪技术

    目录 django中的会话跟踪技术 什么是会话跟踪技术 HTTP无状态协议 Cookie概述 什么是cookie cookie源码 cookie超长时间 cookie超长时间 cookie生效路径 删 ...

  2. 04-cookies 会话跟踪技术

    1.会话跟踪技术 1.Http协议的无状态保存 会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应 2 .会话路径技术使用Cookie或session完成 我们知道HTTP协 ...

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

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

  4. JavaWeb04-JSP及会话跟踪技术

    JSP入门 1 JSP概述 1.1 什么是JSP JSP(Java Server Pages)是JavaWeb服务器端的动态资源.它与html页面的作用是相同的,显示数据和获取数据. 1.2 JSP的 ...

  5. 四种会话跟踪技术以及jstl介绍

    四种会话跟踪技术 page:代表与一个页面相关的对象和属性.一个页面由一个编译好的 Java servlet 类(可以带有任何的 include 指令,但是没有 include 动作)表示.这既包括 ...

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

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

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

    全部章节   >>>> 本章目录 7.1 会话跟踪技术概述 7.1.1 为什么需要会话跟踪 7.1.2 会话的状态和跟踪 7.1.3 会话跟踪技术 7.1.4 会话跟踪工作流程 ...

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

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

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

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

  10. Cookie&Session会话跟踪技术

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

随机推荐

  1. PHP 源码 — intval 函数源码分析

    PHP 源码 - intval 函数源码分析 文章来源: https://github.com/suhanyujie/learn-computer/ 作者:suhanyujie 基于PHP 7.3.3 ...

  2. python UI自动化之切换iframe

    python+selenium写UI自动化的时候,经常会遇到需要切换iframe的情况,这里介绍几种切换iframe的方式 1.使用id定位 driver.switch_to.frame(" ...

  3. goahead 流程

    原文:https://blog.csdn.net/qq_32419007/article/details/80756643 1.全局变量 Web服务器的根目录 static char_t        ...

  4. 刷题72. Edit Distance

    一.题目说明 题目72. Edit Distance,计算将word1转换为word2最少需要的操作.操作包含:插入一个字符,删除一个字符,替换一个字符.本题难度为Hard! 二.我的解答 这个题目一 ...

  5. CSS-透明背景色兼容

    IE 不支持透明背景色 使用fileter div{ backgournd: #666; filter:alpha(opacity=50); -moz-opacity:0.5; opacity:0.5 ...

  6. execute command denied to user 'maintain'@'%' for routine

    GRANT ALL PRIVILEGES ON *.* TO 'maintain'@'%' ; FLUSH PRIVILEGES;

  7. main函数的参数详解

    1.定义 C语言规定main函数的参数只能有两个,习惯上这两个参数写为argc和argv.因此,main函数的函数头可写为: main (argc,argv)C语言还规定argc(第一个形参)必须是整 ...

  8. 浅谈对Jquery+JSON+WebService的使用小结

    https://www.jb51.net/article/36207.htm  更新时间:2013年04月28日 12:19:55   作者:    我要评论   本篇文章介绍了对Jquery+JSO ...

  9. 1.2 Jmeter 使用代理录制脚本

    参考文档: http://jingyan.baidu.com/article/4e5b3e19333ff191911e2459.html 利用JMeter配置代理:1.添加线程组:  Test Pla ...

  10. java spring-boot 服务器启动参数设置

    java -jar -Xms5866m -Xmx5866m -Xss256k -Xloggc:/home/work/spring-boot/logs/gc-%t.log -XX:+UseGCLogFi ...