WD1X.COM - 问答一下,轻松解决,电脑应用解决专家
主板显卡CPU内存显示器
硬盘维修显卡维修显示器维修
注册表系统命令DOS命令Win8
存储光存储鼠标键盘
内存维修打印机维修
WinXPWin7Win11Linux
硬件综合机箱电源散热器手机数码
主板维修CPU维修键盘鼠标维修
Word教程Excel教程PowerPointWPS
网络工具系统工具图像工具
数据库javascript服务器
PHP教程CSS教程XML教程

php实现session入库操作例子

更新时间:2014-12-08 17:34 作者:佚名点击:
session是存在服务器指定目录中一个全局变量了,对于一般登录是可以做到,但像淘宝购物车如果全部做session肯定是不行的,我们需要把session保存到数据库以方便下次调用具体操作如。

session入库操作例子

代码如下  

<?php
ini_set("session.save_handler","user");
//session.gc_probability = 1 分子
ini_set("session.gc_probability",1);
//session.gc_divisor = 1000 分母
ini_set("session.gc_divisor",2);
//session.gc_maxlifetime = 1440 垃圾回收时间,session有效期

session_set_save_handler( "open","close","read","write","destroy","gc" );

//连接数据库
function open($savePath,$sessionName){
mysql_connect("localhost","root","root");
mysql_select_db("test");
mysql_query("set names utf8");
}
function close(){
echo "close<br>";
}
function read($sessionId){
$sql = "select * from session where sessionid='".$sessionId."'";
$re = mysql_query($sql);
$sessdata = mysql_fetch_assoc($re);

//返回session存储的数据
return $sessdata["sessiondata"];
}
function write($sessionId,$data){

//如果sessionid不存在,插入新纪录,存在就更新
/*$sql = "select * from session where sessionid='".$sessionId."'";
$re = mysql_query($sql);
if(mysql_num_rows($re) > 0){
$sql = "update session set sessiondata='".$data."' where sessionid='".$sessionId."'";
}else{
$sql = "insert into session(sessionid,sessiondata,sessiontime) values('".$sessionId."','".$data."',".time().")";

}
if(!mysql_query($sql)){
echo mysql_error();
}else{
return true;
}
*/

//用replace语法解决上述操作
$sql = "replace into session(sessionid,sessiondata,sessiontime) values('".$sessionId."','".$data."',".time().")";
if(!mysql_query($sql)){
echo mysql_error();
}else{
return true;
}

}

//根据sessionid销毁当前的session
function destroy($sessionId){
echo "destroy<br>";
}

//删除过期的所有session
function gc($lifetime){
echo "gc<br>";
}


session_start();

$_SESSION["vvvv"] = "eeee";
var_dump($_SESSION);
?>

顶一下
(3)
100%
踩一下
(0)
0%
------分隔线----------------------------
你可能感兴趣的内容