php将简单的数据从数据库,php将session保存到数据库的简单示例
/**
* PHP中将session保存到数据库的代码
*
* @param
* @arrange 512-笔记网: 512Pic.com
**/
// 'sessions' table schema
// create table sessions (
// session_id char(32) not null,// session_data text not null,// session_expiration int(11) unsigned not null,// primary key (session_id));
//
include_once 'DB.PHP';
// Global Variables
$dbh = NULL;
function on_session_start ($save_path,$session_name) {
global $dbh;
$dbh = DB::connect('MysqL://user:secret@localhost/SITE_SESSIONS',true);
if (DB::isError($dbh)) {
die(sprintf('Error [%d]: %s',$dbh->getCode(),$dbh->getMessage()));
}
}
function on_session_end ()
{
// Nothing needs to be done in this function
// since we used persistent connection.
}
function on_session_read ($key)
{
global $dbh;
$stmt = "select session_data from sessions";
$stmt .= " where session_id = '$key'";
$stmt .= " and session_expiration > now()";
$sth = $dbh->query($sth);
$row = $sth->fetchRow(DB_FETCHMODE_ASSOC);
return $row['session_data'];
}
function on_session_write ($key,$val)
{
global $dbh;
$val = addslashes($val);
$insert_stmt = "insert into sessions values('$key','$val',now() + 3600)";
$update_stmt = "update sessions set session_data = '$val',";
$update_stmt .= "session_expiration = now() + 3600 ";
$update_stmt .= "where session_id = '$key'";
// First we try to insert,if that doesn't succeed,it means
// session is already in the table and we try to update
if (DB::isError($dbh->query($insert_stmt)))
$dbh->query($update_stmt);
}
function on_session_destroy ($key)
{
global $dbh;
$stmt = "delete from sessions where session_id = '$key'";
$dbh->query($stmt);
}
function on_session_gc ($max_lifetime)
{
global $dbh;
// In this example,we don't use $max_lifetime parameter
// We simply delete all sessions that have expired
$stmt = "delete from sessions where session_expiration < now()";
$dbh->query($stmt);
}
session_start ();
// Register the $counter variable as part
// of the session
session_register ("counter");
// Set the save handlers
session_set_save_handler ("on_session_start","on_session_end","on_session_read","on_session_write","on_session_destroy","on_session_gc");
// Let's see what it does
$counter++;
print $counter;
session_destroy();
/*** 来自编程之家 jb51.cc(jb51.cc) ***/
php将简单的数据从数据库,php将session保存到数据库的简单示例相关推荐
- PHP类分享:session保存到数据库
下面是Session保存到数据库的PHP类,和大家分享下,欢迎拍砖的哈,拍的时候看着点就行哈! <?php class SessionToDB { private $_path = null; ...
- java图片保存到数据库_java中将图片保存到数据库中
在实际的开发中,我们可能需要将图片.影音等文件直接保存到数据库中,然后通过编程方式将数据读出进行使用.例如将读出的图片数据显示出来,将读出的电影文件播放出来. 二进制数据直接保存到文件和从文件中读出非 ...
- php存数组到数据库,PHP将数组保存到数据库
在 PHP开发中,最常用的数据类型算是字符串和数组了,且数组类型的数据通常需要和数据库进行交互,尤其是对于结构化的数据. 在很多时候,我们需要把数字保存到数据库,实现对于结构化数据的直接存储以及读 ...
- ASP.NET将Session保存到数据库中
因为ASP.NET中Session的存取机制与ASP相同,都是保存在进行中, 一旦进程崩溃,所有Session信息将会丢失,所以我采取了将Session信息保存到SQL Server中,尽管还有其它的 ...
- java保存时间到数据库_java new date 保存到数据库时间不对
Ibatis框架之系统架构 如果用最简洁的话来总结 iBATIS 主要完成那些功能时,我想下面几个代码足够概括. 1 Class.forName("oracle.jdbc.driver.Or ...
- oracle数据库卡住了无法保存,Oracle数据库使用NFS存储,启动报错提示无法锁定文件...
Oracle报错信息: SQLgt; startup gt; ORA-10997: another startup/shutdown operation of this instance inprog ...
- 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上) 试读版
ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍 ABAP 标准培训教程 BC400 学习笔记之二:Cross-client 和 Clien ...
- 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (下)
在本文的前续篇章:如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上) 我们已经在系统里创建了两张数据库表 ZPERSON 和 ZMYORDERS, 并插入了对应的记录: 文章的 ...
- 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】)...
本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较 (三)SSIS的简介 (四)数据库中存储过程示例(SSIS应用需要) (五)Excel模板的制作(这步这么简单,稍微介 ...
最新文章
- ugui源码_UGUI 源码笔记(一)文件结构和部分组件使用
- AD中批量增加带密码用户
- 七个你没用过的炫酷开发工具推荐
- 霍因科技获首届全国信创产业生态创新奖
- php最复杂,php – 什么方法最好构建这个复杂的图
- 游戏开发学什么?四步修炼骨灰级高手
- 道岔及转辙机结构详解
- 笔记本计算机摄像头怎么打开,笔记本电脑的摄像头在哪里打开(图解摄像头开启步骤)...
- 四象限运行模式_四象限变频器原理及系统构成
- 【随笔1】石榴红,依旧。
- mongodb 聚合函数求平均值及时差处理
- 三菱FX系列PLC以太网通讯
- SolveigMM Video Splitter绿色中文版
- 特斯拉竞争对手Rivian获7亿美元融资 亚马逊领投
- 过滤器和拦截器(SpringMVC实现)
- 什么是接口,面向接口编程的好处是什么?
- NSUserDefaults见解
- 灰色关联分析(清风建模学习笔记)
- 关于iOS录音后播放声音小的问题
- Eclipse项目名称出现红叉
热门文章
- 系统权限控制设计001---RBAC用户角色权限设计方案
- Android异常总结--- java.net.SocketTimeoutException: Transport endpoint is not connected
- Android学习笔记05---项目的目录结构与安装及启动过程分析
- 随想录(octave软件)
- ftk学习记(combox篇)
- 提高代码的运行效率 (4)
- 解析超大文件_MySQL物理文件结构和SQL执行流程
- java easing_p5.js入门教程之平滑过渡(Easing)
- 51单片机点亮数码管
- 《统计学习方法》读书笔记——K近邻法(原理+代码实现)