public function __construct(PDO $pdo) " /> 在线观看不卡一区,日本一区二区精品,欧美视频免费

中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

Session保存到數據庫的php類分享

復制代碼 代碼如下:
<?php
class SessionToDB
{
private $_path = null;
private $_name = null;
private $_pdo = null;
private $_ip = null;
private $_maxLifeTime = 0;

public function __construct(PDO $pdo)
{
session_set_save_handler(
array(&$this, 'open'),
array(&$this, 'close'),
array(&$this, 'read'),
array(&$this, 'write'),
array(&$this, 'destroy'),
array(&$this, 'gc')
);

$this->_pdo = $pdo;
$this->_ip = !empty($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : null;
$this->_maxLifeTime = ini_get('session.gc_maxlifetime');
}

public function open($path,$name)
{
return true;
}

public function close()
{
return true;
}

public function read($id)
{
$sql = 'SELECT * FROM session where phpSESSID = ?';
$stmt = $this->_pdo->prepare($sql);
$stmt->execute(array($id));

if (!$result = $stmt->fetch(PDO::FETCH_ASSOC)) {
return null;
} elseif ($this->_ip != $result['client_ip']) {
return null;
} elseif ($result['update_time']+$this->_maxLifeTime < time()){
$this->destroy($id);
return null;
} else {
return $result['data'];
}
}

public function write($id,$data)
{
$sql = 'SELECT * FROM session where phpSESSID = ?';
$stmt = $this->_pdo->prepare($sql);
$stmt->execute(array($id));

if ($result = $stmt->fetch(PDO::FETCH_ASSOC)) {
if ($result['data'] != $data) {
$sql = 'UPDATE session SET update_time =? , date = ? WHERE phpSESSID = ?';

$stmt = $this->_pdo->prepare($sql);
$stmt->execute(array(time(), $data, $id));
}
} else {
if (!empty($data)) {
$sql = 'INSERT INTO session (phpSESSID, update_time, client_ip, data) VALUES (?,?,?,?)';
$stmt = $this->_pdo->prepare($sql);
$stmt->execute(array($id, time(), $this->_ip, $data));
}
}

return true;
}

public function destroy($id)
{
$sql = 'DELETE FROM session WHERE phpSESSID = ?';
$stmt = $this->_pdo->prepare($sql);
$stmt->execute(array($id));

return true;
}

public function gc($maxLifeTime)
{
$sql = 'DELETE FROM session WHERE update_time < ?';
$stmt = $this->_pdo->prepare($sql);
$stmt->execute(array(time() - $maxLifeTime));

return true;
}
}

try{
$pdo = new PDO('mysql:host=localhost;dbname=rphp4zf', 'root','rickyfeng');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

new SessionToDB($pdo);
} catch(PDOException $e) {
echo 'Error: '.$e->getMessage();
}

php技術Session保存到數據庫的php類分享,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产一区二区 | 秋霞电影院午夜伦 | 一二三四在线视频观看社区 | 欧美一二三区 | 成人久久 | 日韩欧美一区二区三区免费观看 | 国产精品99久久久久久宅男 | 91视频一区二区 | 国产精品99久久久久久www | 国产一区二区不卡 | 91成人在线视频 | 一区在线播放 | 亚洲毛片在线观看 | 国产欧美精品一区 | 福利网站导航 | 午夜成人在线视频 | 欧美人妇做爰xxxⅹ性高电影 | 中文字幕高清免费日韩视频在线 | 91国产精品 | 欧美精品在线播放 | 在线āv视频 | 亚洲丝袜天堂 | xnxx 日本免费| 久久精品国产久精国产 | 狠狠操天天干 | 成人在线免费看 | 色综合久 | 日本在线视频中文字幕 | av影音资源 | 丝袜一区二区三区 | 国产黄色在线观看 | 欧美中文字幕 | 日韩a视频 | 国产乱码久久久久久一区二区 | www.99久久.com | 亚洲bt 欧美bt 日本bt | 欧洲亚洲视频 | 一区二区三区中文字幕 | 精品久久国产 | 免费黄色大片 | 国产精品久久久久久久久久不蜜臀 |