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

  我的文采不好,总结的不全,但是我始终相信天道酬勤;相信自己每发一篇帖子都会进步一次。上个月答应人道表哥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. DataFrames,Datasets,与 SparkSQL

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  2. 题解【洛谷P1038/CJOJ1707】[NOIP2003提高组]神经网络

    [NOIP2003]神经网络 Description 问题背景:人工神经网络( Artificial Neural Network )是一种新兴的具有自我学习能力的计算系统,在模式识别.函数逼近及贷款 ...

  3. [POI2011]ROT-Tree Rotations 线段树合并|主席树 / 逆序对

    题目[POI2011]ROT-Tree Rotations [Description] 现在有一棵二叉树,所有非叶子节点都有两个孩子.在每个叶子节点上有一个权值(有\(n\)个叶子节点,满足这些权值为 ...

  4. BZOJ1015[JSOI2008]星球大战starwar题解报告

    题目链接 考虑正序去除点去掉其所有连边十分复杂,可以倒序离线处理,每次新建一个点,连接其连边,用并查集统计联通块的个数. 附代码 #include<iostream> #include&l ...

  5. 使用c#做前台页面

    1.有很多组件,组件右属性,事件 2.在table中,操作用的是图片 3.打开dialog时,其他窗体不能使用 4.在子窗体编辑完,对后台操作后,在父窗体加载一下数据

  6. 安装Docker:解决container-selinux >= 2.9问题

    1.安装Docker要求Centos内核版本高于3.10:通过uname  -r查看当前系统的内核版本 uname  -r 2.使用root登陆系统,确保yum包保持更新到最新: sudo yum  ...

  7. 如何预测股票分析--先知(Prophet)

    在上一篇中,我们探讨了自动ARIMA,但是好像表现的还是不够完善,接下来看看先知的力量! 先知(Prophet) 有许多时间序列技术可以用在股票预测数据集上,但是大多数技术在拟合模型之前需要大量的数据 ...

  8. sqlserver 数据保留固定位小数,四舍五入后保存

    在实际业务中遇到金额保留四舍五入后,保留两位小数的需求.但是原来的数据是保留的6位小数,所以需要转化一下.具体实现过程如下: EG:SELECT CAST ( ROUND(1965.12540,2) ...

  9. extern "C" 与函数重载

    前言 如果向要在一个文件中使用另一个文件中的变量,不能在头文件中定义全局变量,因为被多个文件包含后会导致编译出错,并且静态的static变量,只能在本文件内使用,这时候就可以使用extern关键字. ...

  10. 计算几何-点与多边形的位置判断-zoj1081Points Within

    This article is made by Jason-Cow.Welcome to reprint.But please post the writer's address. http://ww ...