搜索
系统检测到您的用户名不符合规范:

将session数据存储到cookie的类库

浏览:846 发布日期:2019年03月23日 分类:系统代码 关键字: php session cookie
将session数据存储到cookie的类库,完整代码请下载附件,
其中test1.php, test2.php是演示操作。需要在php5.4以上的环境测试,
已经修正了php7.0以上的 E_WARNING:session_write_close(): Session callback expects true/false return value
欢迎转载
欢迎访问我的小站:http://3d5156.com/
平时我们做一些会员系统,需要登录,一般会用cookie/session存储用户的信息,但是cookie是不安全,如果不是加密存储会被伪造,但session默认是随浏览器进程,关闭浏览器就消失,给用户造成不方便,存储在redis或memcache中,一般的开发者如果不能独立配置安装服务器的话,这些扩展默认都是不开启的,而且在一些需要跨域的操作的时候,session默认是不能跨域,这个类库就是为了解决这些问题而开发的。
可能表述的有点问题,但目前在我的个人站点已经很好实践,因为我是采用了session和cookie双重验证,平时我从3d5156.com登陆,但是到了www.3d5156.com。又要重新登陆一遍,现在用了这个类库就很简单解决了。<?php

session_start();
require './Cookie.php';
$secret = "3123123"; //密钥

//设置session 值
function setSession($name , $value)
{
global $secret;
$handler = new Cookie($secret , '');
session_set_save_handler($handler, true);
return $handler->write($name, $value);
}

echo '中文啊啊222';
setSession('dad' ,'8888888888');
setSession('foo' , array('name'=>'Tom', 'password'=>'12345678') );
session_start();
require './Cookie.php';
$secret = "3123123";
//获取session 值
function getSession($name)
{
global $secret;
$handler = new Cookie($secret , '');
session_set_save_handler($handler, true);
return $handler->read($name);
}



print_r( getSession('dad') );
print_r( getSession('foo') );


//可以看看cookie里面有什么变量
print_r($_COOKIE);
验证的方法很简单,解压放到你的web任意目录下,运行http://你的网址/test1.php,它就是设置session值到cookie了,
然后关闭浏览器,再重新开启浏览器,默认的话,session应该会被清空,但这是时你运行http://你的网址/test2.php
你就可以看到效果。

附件 cookie.zip ( 3.69 KB 下载:3 次 )

评论() 相关
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
收藏
路过人间
积分:504 等级:LV2
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /