session存储到mysql数据库_MySQL
根据qq互联中的session类和php官方上的例子,整理
<?phpini_set ('error_reporting',E_ALL);ini_set('display_errors',TRUE);class session{const db_host = '127.0.0.1';const db_user = 'root';const db_password ='';const db_name = 'test';const db_table = 'tbl_session';private $lifetime;private $dbHandle;function open($path,$id){ $con = @mysql_connect(self::db_host,self::db_user,self::db_password); $sel = @mysql_select_db(self::db_name,$con); $this->lifetime = get_cfg_var("session.gc_maxlifetime"); $this->dbHandle = $con; if(!$con || !$sel) return false; return true; }function close(){ $this->gc($this->lifetime); return @mysql_close($this->dbHandle);}function read($id){ $rs = @mysql_query("select session_data data from ".self::db_table." where session_expires dbHandle); $row = @mysql_fetch_assoc($rs); return $row?$row['data']:'';}function write($id,$data){ $newEXP = time()+ ini_get("session.gc_maxlifetime"); $sel = mysql_query("select * from ".self::db_table." where session_id= '".$id."'",$this->dbHandle); if(mysql_affected_rows($this->dbHandle)){ $rs = @mysql_query("update ".self::db_table." set session_data = '".$data."', session_expires = '".$newEXP."' WHERE session_id = '".$id."'",$this->dbHandle); if(@mysql_affected_rows($this->dbHandle)) return true; }else{ $rs = @mysql_query("insert into ".self::db_table." (session_id,session_data,session_expires)values('".$id."','".$data."','".$newEXP."')",$this->dbHandle); if(@mysql_affected_rows($rs)) return true; } return false;}function destroy($id){ @mysql_query("delete from ".self::db_table." where session_id = '".$id."'",$this->dbHandle);}function gc($lifetime){ @mysql_query("delete from ".self::db_table." where sessoin_expires > '".time()."'",$this->dbHandle);}}$session = new session();session_set_save_handler(array(&$session,'open'),array(&$session,'close'),array(&$session,'read'),array(&$session,'write'),array(&$session,'destroy'),array(&$session,'gc'));session_start();
登录后复制
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
1 个月前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保护它?
1 个月前
By DDD
R.E.P.O.最佳图形设置
2 周前
By 尊渡假赌尊渡假赌尊渡假赌
刺客信条阴影:贝壳谜语解决方案
1 周前
By DDD

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

本文讨论了使用MySQL的Alter Table语句修改表,包括添加/删除列,重命名表/列以及更改列数据类型。

文章讨论了为MySQL配置SSL/TLS加密,包括证书生成和验证。主要问题是使用自签名证书的安全含义。[角色计数:159]

文章讨论了流行的MySQL GUI工具,例如MySQL Workbench和PhpMyAdmin,比较了它们对初学者和高级用户的功能和适合性。[159个字符]

本文讨论了使用Drop Table语句在MySQL中放下表,并强调了预防措施和风险。它强调,没有备份,该动作是不可逆转的,详细介绍了恢复方法和潜在的生产环境危害。

本文讨论了在PostgreSQL,MySQL和MongoDB等各个数据库中的JSON列上创建索引,以增强查询性能。它解释了索引特定的JSON路径的语法和好处,并列出了支持的数据库系统。

文章讨论了使用准备好的语句,输入验证和强密码策略确保针对SQL注入和蛮力攻击的MySQL。(159个字符)
