简单解释一下,session入库的基本原理。是修改原理的session处理机制。
session 自带了六个函数 open close read write destory gc 六个函数。
我们通过自定义这六个函数完成session 的操纵。
下面:
一:我们定义6个方法
function read ($sess_id ){
$link = mysql_connect('127.0.0.1','root','');
mysql_query('set names utf8');
mysql_query('use shopping');
$sql = "select sess_data from `session_table` where sess_id=$sess_id";
$res = mysql_query($sql,$link);
if($res){
$row = mysql_fetch_assoc($res);
return $row['sess_data'];
}else{
return '';
}
}
function write($sess_id,$sess_data){
$link = mysql_connect('127.0.0.1','root','');
mysql_query('set names utf8');
mysql_query('use shopping');
$creatime = time();
$sql = "insert into `session_table` values('$sess_id','$sess_data','$creatime') on duplicate key update sess_data='$sess_data',time='$creatime'";
return mysql_query($sql,$link);
}
function destroy($sess_id){
$link = mysql_connect('127.0.0.1','root','');
mysql_query('set names utf8');
mysql_query('use shopping');
$sql = "delete from `session_table` where sess_id='$sess_id'";
return mysql_query($sql,$link);
}
function open(){
$link = mysql_connect('127.0.0.1','root','');
mysql_query('set names utf8');
mysql_query('use shopping');
}
function close(){
return true;
}
function gc(){
echo "gc";
$last = $now-$ttl;
$sql = "delete from `session_table` where time<'$last'";
}
二:然后要在使这6个函数生效:
session_set_save_handler(
‘open’,
‘close’,
‘read’,
‘write’,
‘destroy’,
‘gc’);
三: 使用
session_start();
SESSION[‘11name′]=”liujddie”;
_SESSION[‘age’]=23;
四:当然前提是你有一张表。