ThinkPHP实现将SESSION存入MYSQL的方法


Posted in PHP onJuly 22, 2014

本文以实例讲解了ThinkPHP实现将SESSION存入MYSQL的方法,所采用的运行环境是ThinkPHP3.1.2版

首先index.php中设置为:

<?php
define('APP_DEBUG', true);//设置为调试模式
require '../ThinkPHP/ThinkPHP.php';//设置入口文件
ini_set("session.save_handler", "user");//设置PHP的SESSION由用户定义

在config.php中设置为:

<?php
return array(//'配置项'=>'配置值'
      // 添加数据库配置信
  'SHOW_PAGE_TRACE' =>true,
  'DB_TYPE'  => 'mysql', // 数据库类型
  'DB_HOST'  => 'localhost', // 服务器地址
  'DB_NAME'  => 'thinkphp', // 数据库名
  'DB_USER'  => '你的用户名', // 用户名
  'DB_PWD'  => '你的密码', // 密码
  'DB_PORT'  => 3306, // 端口
  'DB_PREFIX' => 'think_', // 数据库表前缀缀
'SESSION_OPTIONS'=>array(
    'type'=> 'db',//session采用数据库保存
    'expire'=>1440,//session过期时间,如果不设就是php.ini中设置的默认值
  ),
'SESSION_TABLE'=>'think_session', //必须设置成这样,如果不加前缀就找不到数据表,这个需要注意
);
?>

数据库设置采用SessionDb.class.php中的DDL,不过后面加了ENGINE=MyISAM DEFAULT CHARSET=utf8

CREATE TABLE think_session (
    session_id varchar(255) NOT NULL,
    session_expire int(11) NOT NULL,
    session_data blob,
    UNIQUE KEY `session_id` (`session_id`)
  )ENGINE=MyISAM DEFAULT CHARSET=utf8;

现在访问你的 index.php 后再在 phpmyadmin 中找到 think_session 表,我们会惊喜的发现多了条数据。
至此问题搞定。其他不要设置了,SessionDb.class.php会自动加载.

这样ThinkPHP的调用

session('session_name','session_value')

系统就会自动把这个session存储上面创建的数据库中。

PHP 相关文章推荐
yii框架通过控制台命令创建定时任务示例
Apr 30 PHP
PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法
May 10 PHP
PHP使用CURL_MULTI实现多线程采集的例子
Jul 29 PHP
ThinkPHP中自定义目录结构的设置方法
Aug 15 PHP
分享3个php获取日历的函数
Sep 25 PHP
php mysql 封装类实例代码
Sep 18 PHP
phalcon model在插入或更新时会自动验证非空字段的解决办法
Dec 29 PHP
老生常谈PHP 文件写入和读取(必看篇)
May 22 PHP
学习thinkphp5.0验证类使用方法
Nov 16 PHP
ThinkPHP框架使用redirect实现页面重定向的方法实例分析
Apr 12 PHP
Yii框架中用response保存cookie,用request读取cookie的原理解析
Sep 04 PHP
Laravel手动返回错误码示例
Oct 22 PHP
ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
Jul 22 #PHP
ThinkPHP权限认证Auth实例详解
Jul 22 #PHP
ThinkPHP行为扩展Behavior应用实例详解
Jul 22 #PHP
qq登录,新浪微博登录接口申请过程中遇到的问题
Jul 22 #PHP
php.ini save_handler 修改不生效的解决办法
Jul 22 #PHP
PHP中模拟处理HTTP PUT请求的例子
Jul 22 #PHP
ThinkPHP之用户注册登录留言完整实例
Jul 22 #PHP
You might like
《Re:从零开始的异世界生活》剧情体验,手游新作定名
2020/04/09 日漫
PHP中Session的概念
2006/10/09 PHP
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
9个经典的PHP代码片段分享
2014/12/18 PHP
PHP-X系列教程之内置函数的使用示例
2017/10/16 PHP
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
2010/02/07 Javascript
Ajax 数据请求的简单分析
2011/04/05 Javascript
jQuery动态地获取系统时间实现代码
2013/05/24 Javascript
javascript实现可改变滚动方向的无缝滚动实例
2013/06/17 Javascript
javascript的parseFloat()方法精度问题探讨
2013/11/26 Javascript
jQuery获取父元素及父节点的方法小结
2016/04/14 Javascript
vue2.0获取鼠标位置的方法
2018/09/13 Javascript
javascript动态创建对象的属性详解
2018/11/07 Javascript
微信小程序使用map组件实现路线规划功能示例
2019/01/22 Javascript
vue 进阶之实现父子组件间的传值
2019/04/26 Javascript
使用setup.py安装python包和卸载python包的方法
2013/11/27 Python
菜鸟使用python实现正则检测密码合法性
2016/01/05 Python
Flask框架的学习指南之用户登录管理
2016/11/20 Python
详解python之简单主机批量管理工具
2017/01/27 Python
python基础教程项目五之虚拟茶话会
2018/04/02 Python
Python2.7:使用Pyhook模块监听鼠标键盘事件-获取坐标实例
2020/03/14 Python
基于python实现判断字符串是否数字算法
2020/07/10 Python
利用python进行文件操作
2020/12/04 Python
详解FireFox下Canvas使用图像合成绘制SVG的Bug
2019/07/10 HTML / CSS
UGG雪地靴荷兰官网:UGG荷兰
2016/09/09 全球购物
Giglio德国网上精品店:奢侈品服装和配件
2016/09/23 全球购物
Sneaker Studio匈牙利:购买运动鞋
2018/03/26 全球购物
是什么让J2EE适合用来开发多层的分布式的应用
2015/01/16 面试题
怎样声明接口
2014/09/19 面试题
计算 s=(x*y)1/2,用两个宏定义来实现
2016/08/11 面试题
大学生自我鉴定书
2014/03/24 职场文书
小学生优秀评语大全
2014/04/22 职场文书
2014年母亲节寄语
2014/05/07 职场文书
作风建设演讲稿
2014/05/23 职场文书
民事赔偿协议书
2014/11/02 职场文书
烈士陵园扫墓感想
2015/08/07 职场文书