From 5008c1736944cc151df2f74b1adfd14fa7b29540 Mon Sep 17 00:00:00 2001 From: Kazuki Przyborowski Date: Mon, 3 Aug 2009 21:53:30 +0000 Subject: [PATCH] Small update/bug fix to MySQL sessions. git-svn-id: svn://svn.code.sf.net/p/intdb/svn/trunk@288 2b68903e-0b30-0410-9a39-a2e4f3c5be39 --- admin.php | 5 +++-- inc/admin/main.php | 7 ++++++- inc/admin/table.php | 4 +++- inc/versioninfo.php | 4 ++-- mysql.php | 20 +++++++++++++------- setup/preinstall.php | 5 +++-- 6 files changed, 30 insertions(+), 15 deletions(-) diff --git a/admin.php b/admin.php index bf0f0fd..1a6457f 100644 --- a/admin.php +++ b/admin.php @@ -11,7 +11,7 @@ Copyright 2004-2009 iDB Support - http://idb.berlios.de/ Copyright 2004-2009 Game Maker 2k - http://gamemaker2k.org/ - $FileInfo: admin.php - Last Update: 7/18/2009 SVN 275 - Author: cooldude2k $ + $FileInfo: admin.php - Last Update: 8/3/2009 SVN 288 - Author: cooldude2k $ */ if(@ini_get("register_globals")) { require_once('inc/misc/killglobals.php'); } @@ -41,7 +41,8 @@ if($_GET['act']=="vercheck"&&$GroupInfo['ViewDBInfo']=="yes") { if($_GET['act']=="view"|| $_GET['act']=="settings"|| $_GET['act']=="mysql"|| - $_GET['act']=="info") + $_GET['act']=="info"|| + $_GET['act']=="delsessions") { require($SettDir['admin'].'main.php'); } if($_GET['act']=="addforum"|| $_GET['act']=="editforum"|| diff --git a/inc/admin/main.php b/inc/admin/main.php index 3c6e7a9..c93eba8 100644 --- a/inc/admin/main.php +++ b/inc/admin/main.php @@ -11,7 +11,7 @@ Copyright 2004-2009 iDB Support - http://idb.berlios.de/ Copyright 2004-2009 Game Maker 2k - http://gamemaker2k.org/ - $FileInfo: main.php - Last Update: 7/18/2009 SVN 275 - Author: cooldude2k $ + $FileInfo: main.php - Last Update: 8/3/2009 SVN 288 - Author: cooldude2k $ */ $File3Name = basename($_SERVER['SCRIPT_NAME']); if ($File3Name=="main.php"||$File3Name=="/main.php") { @@ -71,6 +71,11 @@ $Settings['KBoostPercent'] = "6|10"; } diff --git a/inc/admin/table.php b/inc/admin/table.php index 2536d45..86cb0eb 100644 --- a/inc/admin/table.php +++ b/inc/admin/table.php @@ -11,7 +11,7 @@ Copyright 2004-2009 iDB Support - http://idb.berlios.de/ Copyright 2004-2009 Game Maker 2k - http://gamemaker2k.org/ - $FileInfo: table.php - Last Update: 7/17/2009 SVN 273 - Author: cooldude2k $ + $FileInfo: table.php - Last Update: 8/3/2009 SVN 288 - Author: cooldude2k $ */ $File3Name = basename($_SERVER['SCRIPT_NAME']); if ($File3Name=="table.php"||$File3Name=="/table.php") { @@ -40,6 +40,8 @@ if ($File3Name=="table.php"||$File3Name=="/table.php") { " onclick="window.open(this.href);return false;">Version Checker ">SQL Dumper + +">Clean Sessions ">Edit Board Info diff --git a/inc/versioninfo.php b/inc/versioninfo.php index ae869ba..521e235 100644 --- a/inc/versioninfo.php +++ b/inc/versioninfo.php @@ -11,7 +11,7 @@ Copyright 2004-2009 iDB Support - http://idb.berlios.de/ Copyright 2004-2009 Game Maker 2k - http://gamemaker2k.org/ - $FileInfo: versioninfo.php - Last Update: 8/3/2009 SVN 287 - Author: cooldude2k $ + $FileInfo: versioninfo.php - Last Update: 8/3/2009 SVN 288 - Author: cooldude2k $ */ $File3Name = basename($_SERVER['SCRIPT_NAME']); if ($File3Name=="versioninfo.php"||$File3Name=="/versioninfo.php") { @@ -27,7 +27,7 @@ function version_info($proname,$subver,$ver,$supver,$reltype,$svnver,$showsvn) { return $return_var; } // Version number and date stuff. :P $VER1[0] = 0; $VER1[1] = 2; $VER1[2] = 8; $VERFull[1] = $VER1[0].".".$VER1[1].".".$VER1[2]; -$VER2[0] = "Pre-Alpha"; $VER2[1] = "PA"; $VER2[2] = "SVN"; $SubVerN = 287; $RName = "iDB"; $SFName = "IntDB"; +$VER2[0] = "Pre-Alpha"; $VER2[1] = "PA"; $VER2[2] = "SVN"; $SubVerN = 288; $RName = "iDB"; $SFName = "IntDB"; $SVNDay[0] = 8; $SVNDay[1] = 3; $SVNDay[2] = 2009; $SVNDay[3] = $SVNDay[0]."/".$SVNDay[1]."/".$SVNDay[2]; $VerInfo['iDB_Ver'] = version_info($RName,$VER1[0],$VER1[1],$VER1[2],$VER2[1],$SubVerN,false); $VerInfo['iDB_Ver_SVN'] = version_info($RName,$VER1[0],$VER1[1],$VER1[2],$VER2[1],$SubVerN,true); diff --git a/mysql.php b/mysql.php index 9118aa1..8885a36 100644 --- a/mysql.php +++ b/mysql.php @@ -11,14 +11,18 @@ Copyright 2004-2009 iDB Support - http://idb.berlios.de/ Copyright 2004-2009 Game Maker 2k - http://gamemaker2k.org/ - $FileInfo: mysql.php - Last Update: 8/3/2009 SVN 287 - Author: cooldude2k $ + $FileInfo: mysql.php - Last Update: 8/3/2009 SVN 288 - Author: cooldude2k $ */ +/* Some ini setting changes uncomment if you need them. */ //@ini_set("display_errors", true); //@ini_set("display_startup_errors", true); @error_reporting(E_ALL ^ E_NOTICE); -@ini_set('session.use_trans_sid', false); -@ini_set("url_rewriter.tags",""); +//@ini_set("session.use_trans_sid", false); +//@ini_set("url_rewriter.tags",""); @set_time_limit(30); @ignore_user_abort(true); +//@ini_set("session.gc_probability", 1); +//@ini_set("session.gc_divisor", 100); +//@ini_set("session.gc_maxlifetime", 1440); $File3Name = basename($_SERVER['SCRIPT_NAME']); if ($File3Name=="mysql.php"||$File3Name=="/mysql.php") { @header('Location: index.php'); @@ -174,7 +178,7 @@ return true; } function read( $id ) { global $sqltable; $data = ""; -$time = time(); +$time = GMTimeStamp(); $sqlr = query("SELECT `session_data` FROM `".$sqltable."sessions` WHERE `session_id` = '%s' AND `expires` > %i", array($id,$time)); $rs = mysql_query($sqlr); $a = mysql_num_rows($rs); @@ -184,7 +188,7 @@ $data = $row['session_data']; } return $data; } function write( $id, $data ) { global $sqltable; -$time = time() + ini_get("session.gc_maxlifetime"); +$time = GMTimeStamp() + ini_get("session.gc_maxlifetime"); $sqlw = query("REPLACE `".$sqltable."sessions` VALUES('$id','$data', $time)", array($id,$data,$time)); $rs = mysql_query($sqlw); return true; } @@ -195,8 +199,10 @@ mysql_query($sqld); return true; } function gc() { global $sqltable; -$sqlg = query('DELETE FROM `'.$sqltable.'sessions` WHERE `expires` < UNIX_TIMESTAMP();', array(null)); -db_query($sqlg); +$time = GMTimeStamp(); +//$sqlg = query('DELETE FROM `'.$sqltable.'sessions` WHERE `expires` < UNIX_TIMESTAMP();', array(null)); +$sqlg = query('DELETE FROM `'.$sqltable.'sessions` WHERE `expires` < %i', array($time)); +mysql_query($sqlg); return true; } @session_set_save_handler("open", "close", "read", "write", "destroy", "gc"); if($cookieDomain==null) { diff --git a/setup/preinstall.php b/setup/preinstall.php index 80befc9..8ffbf28 100644 --- a/setup/preinstall.php +++ b/setup/preinstall.php @@ -11,10 +11,11 @@ Copyright 2004-2009 iDB Support - http://idb.berlios.de/ Copyright 2004-2009 Game Maker 2k - http://gamemaker2k.org/ - $FileInfo: preinstall.php - Last Update: 6/16/2009 SVN 264 - Author: cooldude2k $ + $FileInfo: preinstall.php - Last Update: 8/3/2009 SVN 288 - Author: cooldude2k $ */ @error_reporting(E_ALL ^ E_NOTICE); -@ini_set('session.use_trans_sid', false); +/* Some ini setting changes uncomment if you need them. */ +//@ini_set('session.use_trans_sid', false); $File3Name = basename($_SERVER['SCRIPT_NAME']); if ($File3Name=="preinstall.php"||$File3Name=="/preinstall.php") { @header('Location: index.php'); -- 2.11.0