//打开Session function sessionOpen($session_path,$session_name) { global $SCONFIG; //$sessionDb->dbconnection($SCONFIG["dbhost"],$SCONFIG['dbname'],$SCONFIG['dbuser'],$SCONFIG['dbpwd'],false,""); mysql_pconnect($SCONFIG["dbhost"],$SCONFIG['dbuser'],$SCONFIG['dbpwd']) or die("could not connect DB Server"); mysql_select_db("xiaoxuninfodb") or die("could not connect db session"); } //关闭Session function sessionClose() { return 1; } //查找Session值 function sessionSelect($SID) { $query="select value from userSession where sid='$SID' and expiration>".time(); //如果没有Cookie则Session无法保持,要设置php.ini对cookie支持 $result=mysql_query($query); if(mysql_num_rows($result)) { $row=mysql_fetch_assoc($result); $value=$row['value']; return $value; } else { return ""; } } //增加到Session function sessionWrite($SID,$value) { //从php.ini中取到设置的会话时间 $lifetime=get_cfg_var("session.gc_maxlifetime"); $expiration=time()+$lifetime; $query="insert into userSession values('$SID','$expiration','$value')"; $result=mysql_query($query); if(!$result) { $query="update userSession set expiration='$expiration',value='$value' where sid='$SID' and expiration>".time(); $result=mysql_query($query); } } //消毁某个Session function sessionDestroy($SID) { $query="delete from userSession where sid='$SID'"; $result=mysql_query($query); } //消毁所有过期的Session function sessionOutTime($lifetime) { $query="delete from userSession where expiration<".(time()-$lifetime);
//打开Session function sessionOpen($session_path,$session_name) { global $SCONFIG; //$sessionDb->dbconnection($SCONFIG["dbhost"],$SCONFIG['dbname'],$SCONFIG['dbuser'],$SCONFIG['dbpwd'],false,""); mysql_pconnect($SCONFIG["dbhost"],$SCONFIG['dbuser'],$SCONFIG['dbpwd']) or die("could not connect DB Server"); mysql_select_db("xiaoxuninfodb") or die("could not connect db session"); } //关闭Session function sessionClose() { return 1; } //查找Session值 function sessionSelect($SID) { $query="select value from userSession where sid='$SID' and expiration>".time(); //如果没有Cookie则Session无法保持,要设置php.ini对cookie支持 $result=mysql_query($query); if(mysql_num_rows($result)) { $row=mysql_fetch_assoc($result); $value=$row['value']; return $value; } else { return ""; } } //增加到Session function sessionWrite($SID,$value) { //从php.ini中取到设置的会话时间 $lifetime=get_cfg_var("session.gc_maxlifetime"); $expiration=time()+$lifetime; $query="insert into userSession values('$SID','$expiration','$value')"; $result=mysql_query($query); if(!$result) { $query="update userSession set expiration='$expiration',value='$value' where sid='$SID' and expiration>".time(); $result=mysql_query($query); } } //消毁某个Session function sessionDestroy($SID) { $query="delete from userSession where sid='$SID'"; $result=mysql_query($query); } //消毁所有过期的Session function sessionOutTime($lifetime) { $query="delete from userSession where expiration<".(time()-$lifetime);
echo $SESSION[$uid].name;
echo $SESSION[$uid].friend;
这二句什么意思??
后面是变量的话,要加$,不是的话,要加“”
开头要加session_start();
给session赋值
//1 要加session_start();
session_start();$user=new user($uid);
//2 应该为$_SESSION[$uid] = $user;以下同
$SESSION[$uid]=$user;//怎么还出来个.的写法.一般如果调用成员变量之类的东东,要用->.另外session不支持#resource类型.
echo $SESSION[$uid].name;
echo $SESSION[$uid].friend;
$_SESSION[$uid] -- 为什么要用uid作session的键名,一个客户端可以登录多个用户么?
$_SESSION[$uid] = get_object_vars($user) 要把对象储存到SESSION最好先农成数组
session_start() 不能漏了...
PHP SESSION 默认是存放在文件系统,如果要实现别的存储方式可以通过自己编写扩展,或者通过session_set_save_handler改变Session的实现方式。
<?php
//调入数据库配置文件
include_once(SROOT."config.php");
//打开Session
function sessionOpen($session_path,$session_name)
{ global $SCONFIG;
//$sessionDb->dbconnection($SCONFIG["dbhost"],$SCONFIG['dbname'],$SCONFIG['dbuser'],$SCONFIG['dbpwd'],false,"");
mysql_pconnect($SCONFIG["dbhost"],$SCONFIG['dbuser'],$SCONFIG['dbpwd']) or die("could not connect DB Server");
mysql_select_db("xiaoxuninfodb") or die("could not connect db session");
}
//关闭Session
function sessionClose()
{
return 1;
}
//查找Session值
function sessionSelect($SID)
{
$query="select value from userSession where sid='$SID' and expiration>".time();
//如果没有Cookie则Session无法保持,要设置php.ini对cookie支持
$result=mysql_query($query);
if(mysql_num_rows($result))
{
$row=mysql_fetch_assoc($result);
$value=$row['value'];
return $value;
}
else
{
return "";
}
}
//增加到Session
function sessionWrite($SID,$value)
{
//从php.ini中取到设置的会话时间
$lifetime=get_cfg_var("session.gc_maxlifetime");
$expiration=time()+$lifetime;
$query="insert into userSession values('$SID','$expiration','$value')";
$result=mysql_query($query);
if(!$result)
{
$query="update userSession set expiration='$expiration',value='$value' where sid='$SID' and expiration>".time();
$result=mysql_query($query);
}
}
//消毁某个Session
function sessionDestroy($SID)
{
$query="delete from userSession where sid='$SID'";
$result=mysql_query($query);
}
//消毁所有过期的Session
function sessionOutTime($lifetime)
{
$query="delete from userSession where expiration<".(time()-$lifetime);
$result=mysql_query($query);
return mysql_affected_rows();
}
session_set_save_handler('sessionOpen','sessionClose','sessionSelect','sessionWrite','sessionDestroy','sessionOutTime' );?>
//打开Session
function sessionOpen($session_path,$session_name)
{ global $SCONFIG;
//$sessionDb->dbconnection($SCONFIG["dbhost"],$SCONFIG['dbname'],$SCONFIG['dbuser'],$SCONFIG['dbpwd'],false,"");
mysql_pconnect($SCONFIG["dbhost"],$SCONFIG['dbuser'],$SCONFIG['dbpwd']) or die("could not connect DB Server");
mysql_select_db("xiaoxuninfodb") or die("could not connect db session");
}
//关闭Session
function sessionClose()
{
return 1;
}
//查找Session值
function sessionSelect($SID)
{
$query="select value from userSession where sid='$SID' and expiration>".time();
//如果没有Cookie则Session无法保持,要设置php.ini对cookie支持
$result=mysql_query($query);
if(mysql_num_rows($result))
{
$row=mysql_fetch_assoc($result);
$value=$row['value'];
return $value;
}
else
{
return "";
}
}
//增加到Session
function sessionWrite($SID,$value)
{
//从php.ini中取到设置的会话时间
$lifetime=get_cfg_var("session.gc_maxlifetime");
$expiration=time()+$lifetime;
$query="insert into userSession values('$SID','$expiration','$value')";
$result=mysql_query($query);
if(!$result)
{
$query="update userSession set expiration='$expiration',value='$value' where sid='$SID' and expiration>".time();
$result=mysql_query($query);
}
}
//消毁某个Session
function sessionDestroy($SID)
{
$query="delete from userSession where sid='$SID'";
$result=mysql_query($query);
}
//消毁所有过期的Session
function sessionOutTime($lifetime)
{
$query="delete from userSession where expiration<".(time()-$lifetime);
$result=mysql_query($query);
return mysql_affected_rows();
}
session_set_save_handler('sessionOpen','sessionClose','sessionSelect','sessionWrite','sessionDestroy','sessionOutTime' );
MemCache???内存表,对吗??Google搜索!或者最简单的,把内存的某个空间地址,用驱动级别的工具映射到某个分区,把MySQL装到那个分区,就可以了。