ThinkPHP实现将SESSION存入MYSQL的方法

前端之家收集整理的这篇文章主要介绍了ThinkPHP实现将SESSION存入MYSQL的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

首先index.PHP中设置为:

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

在config.PHP中设置为:

PHP;"> '配置值' // 添加数据库配置信 '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

sql;"> 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调用

PHP;"> session('session_name','session_value')

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

原文链接:https://www.f2er.com/thinkphp/24124.html

猜你在找的ThinkPHP相关文章