巩义网站建设,巩义网站制作,巩义做网站-全栈网络

巩义做网站之cookie及session的概念区别和理解
当前位置:首页 > 建站知识 > 网站代码 >

巩义做网站之cookie及session的概念区别和理解

时间: 2019-10-14 分类: 网站代码 浏览次数:

巩义做网站中,或者了解网站运行过程的时候会了解到cookie和session的概念,那么具体两者是什么意思?又有什么作用和区别呢?下面小编与大家一起来认识下。 一.cookie的知识 cookie的概...


 
巩义做网站中,或者了解网站运行过程的时候会了解到cookie和session的概念,那么具体两者是什么意思?又有什么作用和区别呢?下面小编与大家一起来认识下。

一.cookie的知识
1.cookie的概念
cookie是一个真实存在的文件,是用户访问网站时,服务器保留的一些账号密码、浏览信息等资料,以方便用户下次访问的便捷性。
cookie的概念
2.cookie的原理
cookie存储在客户端,是由服务器端生成,发送给浏览器,浏览器将这些信息以键值的方式保存到本地电脑的某一个文本文件中。
cookie存放位置

3.cookie的用处
用户登录时,可以保留账号 密码,方便下次登录网站使用;用户一些“购物车”的操作,以便支付时提取信息;记录用户访问习惯、页面,为用户提供个性服务。
注意:每种浏览器都可以保存cookie,但是各个浏览器不能共享cookie。

4.cookie的工作原理
cookie的工作原理
 
5.添加cookie数据方式,使用setcookie函数,下面为setcookie的对应属性说明:
a.setcookie(字段,值,有效期,cookie指定有效目录);
b.有效期不填就代表关闭浏览器自动销毁;
c.有效目录指访问该目录cookie才有效,防止占用有效带宽,如果不设置或设置”/“,就代表所有目录都有效;d.第五个属性为哪个域名下可用;
e.第六个属性为是否只允许https协议访问,true是允许;
f.第七个属性为是否只能通过http发送cookie到服务器使用,如果允许,就可以使用js等代码进行发送cookie。
//添加cookie数据,
setcookie("username","ceshi");
setcookie("password","123",time()+7*24*3600,”/public“);
setcookie("password","123",time()+7*24*3600,”/“,"www.gyzgl.com",true,true);
//使用js获取cookie数据,语法为:document.cookie
window.alert(document.cookie)
echo PHP_INT_MAX;//代表php最大值
echo time();
展示效果:
cookie数据

6.读取cookie的值,使用$_cookie写法:
//获取cookie用户和密码
echo "用户名:".$_COOKIE[username]."<br>";
echo "密码:".$_COOKIE[password]."<hr>";
//打印$_cookie全局数组
print_r($_COOKIE);

7.删除cookie数据,有以下几种方式:
a.设置有效期,可设置为过去的某一个时间:setcookie("password","123",time()-10,”/public“);
b.设置cookie的字段值为false或空字符串:setcookie("username","");setcookie("username",false);
c.清除浏览器缓存

8.cookie的特点:
a.cookie存储在客户端,不太安全;
b.cookie存储的数据类型,只能是字符串;
c.cookie存储的数据容量,大约只能存储4kb;
d.浏览器可以禁用缓存,也可以禁用cookie,则cookie功能失效

二.session的知识
session在巩义网站制作中对象存储特定用户的回话数据,且一直都存在,存储在服务器端更安全,体积比cookie大得多,不限于字符串类型,它是基于cookie的,没有cookie,就没有session
1.session的原理
session的原理
2.session的使用
session不同于$_POST/$_GET/$_FILE,使用前必须先通过身份验证开启session会话,每个页面都需要开启,且不能重复开启,成功返回true,反之返回false.

//开始session回话
//产生新的sessionID或重用传递过来的sessionID
//产生sessionID,并创建对应的session文件
session_start()
//添加session数据
$_SESSION["username"]="admin";
$_SESSION["password"]="123456";

3.SESSION的读取,使用$_session
//开启session会话
session_start();
//读取session数据
echo "用户名:".$_SESSION["username"]."<br>";
echo "用户名:".$_SESSION["password"]."<br>";
//打印$_SESSION数组
print_r($_SESSION);
SESSION的读取
SESSION的cookie值

4.删除巩义做网站中的session数据,使用unset()函数
//开启session会话
session_start();
//删除session数据,
unset($_session["username"]);

unset($_session["password"]);
注意:
不能通过unset($_session)删除;可以通过
$_session=array();定义空数组来删除

5.销毁巩义网站制作中session文件,使用session_destroy()实现

//开启session会话
session_start();
//删除session数据,
unset($_session["username"]);

unset($_session["password"]);
//销毁session数据,
session_destroy();
注意:销毁session文件之前要先删除session文件,防止内存中存在。

6.session的过期、域名有效性、路径有效性等设置,如下图:
session的属性设置

 
7.session的垃圾回收机制。gc就是垃圾回收的意思
session的垃圾回收机制指的是在巩义网站制作中遗留的那些不用的session缓存文件,通过修改php.ini配置文件来修改。
a.配置session的垃圾回收周期,session.gc_maxlifetime,如下图,为1440秒,没1440秒清理一次
配置session的垃圾回收周期

b.session垃圾回收的概率:session.gc_divisor,回收概率代表一个百分比,如果达到100%就会回收,每1000人才会清理一次。

ession垃圾回收的概率
本文关键词: cookie session 未经允许不得转载:郑州网站建设|郑州网站制作|荥阳网站建设|巩义网站建设|网站优化-全栈网络



说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!
Copyright © 2017-2020 版权所有:全栈网络工作室 备案号:豫ICP备2023004016号 HTML网站地图
郑州网站制作|郑州做网站|巩义网站制作|荥阳做网站|巩义做网站-全栈网络