没有合适的资源?快使用搜索试试~ 我知道了~
主要介绍了php session 写入数据库的相关资料,需要的朋友可以参考下
资源推荐
资源详情
资源评论
php session 写入数据库写入数据库
主要介绍了php session 写入数据库的相关资料,需要的朋友可以参考下
本文实例介绍了php session 写入数据库的方法,分享给大家供大家参考,具体内容如下
<?php
#
# codeMaker Alpha 0.1.1 ( haowei.me )
# This framework comply with the GPL license agreement
#
class session_handler {
protected $maxlifetime = null;
protected $dbHandle = null;
public $config = null;
public static function init($args) {
return new self($args);
}
public function __construct($args) {
$this->config = $args;
$this->maxlifetime = get_cfg_var("session.gc_maxlifetime");
session_set_save_handler(
array($this, "open"),
array($this, "close"),
array($this, "read"),
array($this, "write"),
array($this, "destroy"),
array($this, "gc"));
}
public function open() {
$this->link = mysqli_connect(
$this->config['host'],
$this->config['user'],
$this->config['password'],
$this->config['database']);
mysqli_set_charset($this->link, "utf8");
$sql = 'CREATE TABLE IF NOT EXISTS `%s` (
`session_id` varchar(255) NOT NULL,
`session_data` text,
`session_expires` char(10) NOT NULL,
PRIMARY KEY (`session_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;';
$sql = sprintf($sql, $this->config['table']);
mysqli_query($this->link, $sql);
return true;
}
public function close() {
return true;
}
public function read($session_id) {
if(empty($session_id)) return null;
$sql = 'SELECT `session_data` AS `data` FROM `%s` WHERE `session_id` = "%s" AND `session_expires` > "%u"';
$sql = sprintf($sql,
mysqli_real_escape_string($this->link, $this->config['table']),
mysqli_real_escape_string($this->link, $session_id),
time());
$result = mysqli_query($this->link, $sql);
$row = mysqli_fetch_assoc($result);
return $row['data'];
}
public function write($session_id, $session_data) {
if(empty($session_id)) return null;
$newExpires = time() + $this->maxlifetime;
资源评论
weixin_38564826
- 粉丝: 5
- 资源: 910
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功