Copyright 2004-2011 iDB Support - http://idb.berlios.de/
Copyright 2004-2011 Game Maker 2k - http://gamemaker2k.org/
- $FileInfo: sql.php - Last Update: 08/06/2011 SVN 743 - Author: cooldude2k $
+ $FileInfo: sql.php - Last Update: 10/26/2011 SVN 765 - Author: cooldude2k $
*/
/* Some ini setting changes uncomment if you need them.
Display PHP Errors */
//@ini_set("log_errors","On");
@ini_set("docref_ext", "");
@ini_set("docref_root", "http://php.net/"); }
-@error_reporting(E_ALL ^ E_NOTICE);
+if(!defined("E_DEPRECATED")) { define("E_DEPRECATED", 0); }
+@error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
/* Get rid of session id in urls */
if(!in_array("ini_set", $disfunc)) {
@ini_set("date.timezone","UTC");
ini_set("arg_separator.output",htmlentities($Settings['qstr'], ENT_QUOTES, $Settings['charset']));
ini_set("arg_separator.input",$Settings['qstr']); } }
if(!isset($Settings['idburl'])) { $Settings['idburl'] = null; }
+if(isset($Settings['BoardUUID'])) { $Settings['BoardUUID'] = base64_decode($Settings['BoardUUID']);
+header("Board-Unique-ID: ".$Settings['BoardUUID']); }
if(!isset($Settings['fixbasedir'])) { $Settings['fixbasedir'] = null; }
if(!isset($Settings['fixpathinfo'])) { $Settings['fixpathinfo'] = null; }
if(!isset($Settings['fixcookiedir'])) { $Settings['fixcookiedir'] = null; }
if(!isset($Settings['fixredirectdir'])) { $Settings['fixcookiedir'] = null; }
-$Settings['bid'] = base64_encode(urlencode($Settings['idburl']));
if(!isset($Settings['idb_time_format'])) { $Settings['idb_time_format'] = "g:i A"; }
if(!isset($Settings['idb_date_format'])) { $Settings['idb_date_format'] = "F j Y"; }
if(!isset($Settings['showverinfo'])) {
$Settings['use_hashtype']!="salsa20"&&
$Settings['use_hashtype']!="snefru"&&
$Settings['use_hashtype']!="snefru256"&&
- $Settings['use_hashtype']!="gost") {
+ $Settings['use_hashtype']!="gost"&&
+ $Settings['use_hashtype']!="joaat") {
$Settings['use_hashtype'] = "sha1"; } }
// Check to see if variables are set
require_once($SettDir['misc'].'setcheck.php');
$dayconv = array("year" => 29030400, "month" => 2419200, "week" => 604800, "day" => 86400, "hour" => 3600, "minute" => 60, "second" => 1);
require_once($SettDir['inc'].'function.php');
+$Settings['bid'] = base64_encode(urlencode($Settings['idburl'].url_maker($exfile['index'],$Settings['file_ext'],"act=versioninfo",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false)));
+$Settings['ubid'] = base64_encode(urlencode($Settings['idburl'].url_maker($exfile['index'],$Settings['file_ext'],"act=versioninfo",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index'],false)));
if($Settings['enable_pathinfo']=="on") {
mrstring(); /* Change Path info to Get Vars :P */ }
// Check to see if variables are set
if($Settings['file_ext']=="no+ext"||$Settings['file_ext']=="no ext") {
$MkIndexFile = $exfile['index']; }
$temp_session_data = "ViewingPage|s:9:\"?act=view\";ViewingFile|s:".strlen($MkIndexFile).":\"".$MkIndexFile."\";PreViewingTitle|s:7:\"Viewing\";ViewingTitle|s:11:\"Board index\";UserID|s:1:\"0\";UserIP|s:".strlen($_SERVER['REMOTE_ADDR']).":\"".$_SERVER['REMOTE_ADDR']."\";UserGroup|s:".strlen($Settings['GuestGroup']).":\"".$Settings['GuestGroup']."\";UserGroupID|s:1:\"4\";UserTimeZone|s:".strlen($Settings['DefaultTimeZone']).":\"".$Settings['DefaultTimeZone']."\";UserDST|s:".strlen($Settings['DefaultDST']).":\"".$Settings['DefaultDST']."\";";
+$alt_temp_session_data['ViewingPage'] = "?act=view";
+$alt_temp_session_data['ViewingFile'] = $MkIndexFile;
+$alt_temp_session_data['PreViewingTitle'] = "Viewing";
+$alt_temp_session_data['ViewingTitle'] = "Board index";
+$alt_temp_session_data['UserID'] = "0";
+$alt_temp_session_data['UserIP'] = $_SERVER['REMOTE_ADDR'];
+$alt_temp_session_data['UserGroupID'] = "4";
+$alt_temp_session_data['UserTimeZone'] = $Settings['DefaultTimeZone'];
+$alt_temp_session_data['UserDST'] = $Settings['DefaultDST'];
+$alttemp_session_data = serialize($alt_temp_session_data);
+$alt_temp_session_data = $alttemp_session_data;
+$alttemp_session_data = null;
$SQLSType = $Settings['sqltype'];
//Session Open Function
function sql_session_open($save_path, $session_name ) {
return true; }
//Session Read Function
function sql_session_read($id) {
-global $sqltable,$SQLStat,$SQLSType,$temp_user_ip,$temp_user_agent,$temp_session_data;
+global $sqltable,$SQLStat,$SQLSType,$temp_user_ip,$temp_user_agent,$temp_session_data,$alt_temp_session_data;
$result = sql_query(sql_pre_query("SELECT * FROM \"".$sqltable."sessions\" WHERE \"session_id\" = '%s'", array($id)),$SQLStat);
if (!sql_num_rows($result)) {
sql_query(sql_pre_query("DELETE FROM \"".$sqltable."sessions\" WHERE \"session_id\"<>'%s' AND \"ip_address\"='%s' AND \"user_agent\"='%s'", array($id,$temp_user_ip,$temp_user_agent)),$SQLStat);
$time = GMTimeStamp();
-sql_query(sql_pre_query("INSERT INTO \"".$sqltable."sessions\" (\"session_id\", \"session_data\", \"user_agent\", \"ip_address\", \"expires\") VALUES\n".
-"('%s', '%s', '%s', '%s', %i)", array($id,$temp_session_data,$temp_user_agent,$temp_user_ip,$time)),$SQLStat);
+sql_query(sql_pre_query("INSERT INTO \"".$sqltable."sessions\" (\"session_id\", \"session_data\", \"serialized_data\", \"user_agent\", \"ip_address\", \"expires\") VALUES\n".
+"('%s', '%s', '%s', '%s', '%s', %i)", array($id,$temp_session_data,$alt_temp_session_data,$temp_user_agent,$temp_user_ip,$time)),$SQLStat);
return '';
} else {
$time = GMTimeStamp();
function sql_session_write($id,$data) {
global $sqltable,$SQLStat,$SQLSType,$temp_user_ip,$temp_user_agent;
$time = GMTimeStamp();
-$rs = sql_query(sql_pre_query("UPDATE \"".$sqltable."sessions\" SET \"session_data\"='%s',\"user_agent\"='%s',\"ip_address\"='%s',\"expires\"=%i WHERE \"session_id\"='%s'", array($data,$temp_user_agent,$temp_user_ip,$time,$id)),$SQLStat);
+$rs = sql_query(sql_pre_query("UPDATE \"".$sqltable."sessions\" SET \"session_data\"='%s',\"serialized_data\"='%s',\"user_agent\"='%s',\"ip_address\"='%s',\"expires\"=%i WHERE \"session_id\"='%s'", array($data,serialize($_SESSION),$temp_user_agent,$temp_user_ip,$time,$id)),$SQLStat);
return true; }
//Session Destroy Function
function sql_session_destroy($id) {
$qstrtest = htmlentities($Settings['qstr'], ENT_QUOTES, $Settings['charset']);
$qseptest = htmlentities($Settings['qsep'], ENT_QUOTES, $Settings['charset']);
$isiteurl = $Settings['idburl'].url_maker($exfile['index'],$Settings['file_ext'],"act=view",$Settings['qstr'],$Settings['qsep'],$prexqstr['index'],$exqstr['index']);
-@ini_set("user_agent", "Mozilla/5.0 (compatible; ".$VerCheckName."/".$iverstring."; +".$isiteurl.")");
+@ini_set("user_agent", "Mozilla/5.0 (compatible; ".$UserAgentName."/".$iverstring."; +".$isiteurl.")");
if (function_exists("stream_context_create")) {
$iopts = array(
'http' => array(
'method' => "GET",
'header' => "Accept-Language: *\r\n".
- "User-Agent: Mozilla/5.0 (compatible; ".$VerCheckName."/".$iverstring."; +".$isiteurl.")\r\n".
+ "User-Agent: Mozilla/5.0 (compatible; ".$UserAgentName."/".$iverstring."; +".$isiteurl.")\r\n".
"Accept: */*\r\n".
"Connection: keep-alive\r\n".
"Referer: ".$isiteurl."\r\n".
if(isset($Settings['offline_text'])) { echo $Settings['offline_text']; } $urlstatus = 503;
//echo "\n".sql_errorno($SQLStat);
gzip_page($Settings['use_gzip'],$GZipEncode['Type']); session_write_close(); die(); }
+//Time Format Set
+if(!isset($_SESSION['iDBDateFormat'])) {
+ if(isset($Settings['idb_date_format'])) {
+ $_SESSION['iDBDateFormat'] = $Settings['idb_date_format'];
+ if(!isset($Settings['idb_date_format'])) {
+ $_SESSION['iDBDateFormat'] = "g:i A"; } } }
+if(!isset($_SESSION['iDBTimeFormat'])) {
+ if(isset($Settings['idb_time_format'])) {
+ $_SESSION['iDBTimeFormat'] = $Settings['idb_time_format'];
+ if(!isset($Settings['idb_time_format'])) {
+ $_SESSION['iDBTimeFormat'] = "F j Y"; } } }
//Time Zone Set
if(!isset($_SESSION['UserTimeZone'])) {
if(isset($Settings['DefaultTimeZone'])) {