您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程

ecshop的session传值

岑希伙2024-12-11Ecshop商城教程已有人查阅

导读<?phpclass cls_session{var $session_table = '';var $max_life_time = 1440; // SESSION 过期时间var $session_name = '';var $session_id = '';

<?php
class cls_session
{
var $session_table = '';
var $max_life_time = 1440; // SESSION 过期时间
var $session_name = '';
var $session_id = '';
var $session_expiry = '';
var $session_md5 = '';
var $_time = 0;
function __construct($session_table,$session_name){
$this->cls_session($session_table,$session_name);
}
function cls_session($session_table,$session_name){
$GLOBALS['_SESSION'] = array();
$this->session_name = $session_name;
$this->session_table = $session_table;
if (!empty($_COOKIE[$this->session_name])){
$this->session_id = $_COOKIE[$this->session_name];
}
else{
$this->session_id = '';
}
$this->_time = time();
if ($this->session_id){
$this->load_session();
}
else{
$this->gen_session_id();
setcookie($this->session_name, $this->session_id);
}
register_shutdown_function(array($this, 'update_session'));
}
function gen_session_id(){
$this->session_id = md5(uniqid(mt_rand(), true));
return $this->insert_session();
}
function insert_session(){
return mysql_query('INSERT INTO ' . $this->session_table . " (sesskey, expiry,data) VALUES ('" . $this->session_id . "', ". $this->_time .",'a:0:{}')");
}
function load_session(){
$result = mysql_query('SELECT data, expiry FROM ' . $this->session_table . " WHERE sesskey = '" . $this->session_id . "'");
$session = mysql_fetch_array($result);
if (!empty($session['data']) && $this->_time - $session['expiry'] <= $this->max_life_time){
/***********************************************
* unserialize()还原已经序列化的SESSION变量 *
* 保证了SESSION变量的页面间传值的作用 *
***********************************************/
$GLOBALS['_SESSION'] = unserialize($session['data']);
}
}
function update_session(){
$adminid = !empty($GLOBALS['_SESSION']['admin_id']) ? intval($GLOBALS['_SESSION']['admin_id']) : 0;
$userid = !empty($GLOBALS['_SESSION']['user_id']) ? intval($GLOBALS['_SESSION']['user_id']) : 0;
/************************************************************************
* 用serialize函数将所有你所赋值的SESSION变量转化为一个序列化的字符串。 *
* SESSION本质不会发生变换,存入数据库中,用于下次调用。 *
************************************************************************/
$data = serialize($GLOBALS['_SESSION']);
$this->_time = time();
return mysql_query('UPDATE ' . $this->session_table . " SET expiry = " . $this->_time . ", userid = '" . $userid . "', adminid = '" . $adminid . "', data = '$data' WHERE sesskey = '" . $this->session_id . "'");
}
}
// database host
$db_host = "localhost";
// database name
$db_name = "ecshop";
// database username
$db_user = "root";
// database password
$db_pass = "dingran";
$link = mysql_connect($db_host, $db_user, $db_pass);
if ($link){
mysql_select_db($db_name);
}
else{
exit('mysql connection error:'.mysql_error());
}
/* 初始化session */
$sess = new cls_session('ecs_sessions','ECSCP_ID');
/* 验证session */
if (!isset($_SESSION['admin_id'])){
$_SESSION['admin_id'] = 9900099;
header("Location: e.php"); //在e.php再加载一次cls_session类,输出session变量
}
?>
不掉到水里,也永不知道自己有多大潜力!

本文标签:

很赞哦! ()

相关源码

  • 深蓝色风景摄影机构网站(自适应多端)pbootcms模板该模板基于PbootCMS内核开发,专为风景摄影机构、户外摄影企业设计,采用深蓝色主题传递专业与艺术感,全栈响应式架构确保PC、平板、手机端无缝适配PHP程序结合轻量级SQLite数据库也可以更换MySQL数据库查看源码
  • (PC+WAP)蓝色钢结构机械五金工程建筑基建营销型pbootcms模板下载于PbootCMS开发的钢结构与工程机械专用模板,助力企业构建专业级产品展示平台;模板内置工程案例展示、产品参数对照表等专业模块,预设项目进度、施工方案等建筑行业专属栏目查看源码
  • (PC+WAP)蓝色弹簧针厂家探针充电连接器设备网站源码下载基于PbootCMS开发的响应式模板,为弹簧针、探针连接器等电子元器件企业设计。模板采用工业蓝主色调,突出产品技术特性,支持多维度展示连接器产品的规格参数与应用场景,帮助制造企业建立专业线上展示平台。查看源码
  • (自适应响应式)高新技术科技能源pbootcms网站HTML5模板本模板基于PbootCMS内核开发,为高新技术、科技研发、能源技术等科技型企业设计。采用HTML5+CSS3前沿技术,具备完善的响应式布局,能够自动适配手机、平板和电脑等多种终端设备。模板设计风格简约大气查看源码
  • 响应式茶叶茶道pbootcms网站模板源码(自适应手机端)棕色复古茶具主题的响应式网站模板,为茶叶茶道企业设计,同时支持古玩字画、艺术文化等行业的快速适配,通过替换文字图片即可转型为其他行业官网,大幅降低开发成本。查看源码
  • (自适应)英文电子芯片电子元件网站pbootcms模板下载基于PbootCMS内核开发的电子元件类企业专用模板,采用响应式设计技术,适配电子元器件、集成电路、半导体等行业的品牌展示与技术文档发布需求。前端布局针对芯片参数表格与产品规格书展示进行深度优化。查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐