* Kurzbeschreibung : Sitzungsrelevante Funktionen *
* -------------------------------------------------------------------- *
* Copyright (c) 2003 - 2009 by Roland Haeder *
- * Copyright (c) 2009 - 2013 by Mailer Developer Team *
+ * Copyright (c) 2009 - 2016 by Mailer Developer Team *
* For more information visit: http://mxchange.org *
* *
* This program is free software; you can redistribute it and/or modify *
function setSession ($var, $value) {
// Abort in CSS mode here
if (isCssOutputMode()) {
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Is CSS mode:' . $var . '=' . $value);
return TRUE;
} // END - if
// Trim value and session variable
$var = trim(secureString($var));
- $value = trim($value);
+
+ // Is the value no array?
+ if (!is_array($value)) {
+ // Then trim it
+ $value = trim($value);
+ } // END - if
// Is the session variable set?
- if (('' . $value . '' == '') && (isSessionVariableSet($var))) {
+ if ((!is_array($value)) && ('' . $value . '' == '') && (isSessionVariableSet($var))) {
// Remove the session
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'UNSET:' . $var . '=' . getSession($var));
- unset($GLOBALS['_SESSION'][$var]);
+ unset($_SESSION[$var]);
if (isPhpVersionEqualNewer('5.3.0')) {
// session_unregister() is deprecated as of 5.3.0
return TRUE;
// PHP version < 5.3.0
return session_unregister($var);
}
- } elseif (('' . $value . '' != '') && (!isSessionVariableSet($var))) {
+ } elseif ((is_array($value)) || (('' . $value . '' != '') && (!isSessionVariableSet($var)))) {
// Set session
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'SET:' . $var . '=' . $value);
- $GLOBALS['_SESSION'][$var] = $value;
+ $_SESSION[$var] = $value;
if (isPhpVersionEqualNewer('5.3.0')) {
// session_unregister() is deprecated as of 5.3.0
return TRUE;
} elseif (!empty($value)) {
// Update session
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'UPDATE:' . $var . '=' . $value);
- $GLOBALS['_SESSION'][$var] = $value;
+ $_SESSION[$var] = $value;
return TRUE;
}
// Check whether a session variable is set
function isSessionVariableSet ($var) {
// Warning: DO NOT call logDebugMessage() from here, this will cause an endless loop
- return (isset($GLOBALS['_SESSION'][$var]));
+ return (isset($_SESSION[$var]));
}
// Returns whether the value of the session variable or NULL if not set
function getSession ($var) {
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'var=' . $var . ' - CALLED!');
// Default is not found ;-)
$value = NULL;
// Then get it secured!
if ((isInstaller()) || (!isSqlLinkUp())) {
// Secure string without escaping (and compiling)
- $value = secureString($GLOBALS['_SESSION'][$var]);
+ $value = secureString($_SESSION[$var]);
} else {
// Escape string with SQL driver
- $value = sqlEscapeString($GLOBALS['_SESSION'][$var]);
+ $value = sqlEscapeString($_SESSION[$var]);
}
} // END - if
// Return the value
- //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, $var . '=' . $value);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, $var . '=' . $value . ' - EXIT!');
return $value;
}
// Get whole session array
function getSessionArray () {
// Simply return it
- return $GLOBALS['_SESSION'];
+ return $_SESSION;
}
// Destroy user session
setAdminMd5('');
setAdminLast(0);
- // Set cache to FALSE
- $GLOBALS['isAdmin'] = FALSE;
+ // Remove "cache"
+ unset($GLOBALS['isAdmin']);
// Destroy session if requested and return status
if ($destroy === TRUE) {
// Is a session id there?
if (!isValidSession()) {
// Start the session
+ //* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Initializing session ...');
$GLOBALS['valid_session'] = session_start();
$GLOBALS['isValidSession'] = TRUE;
+
+ //* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'session_id=' . session_id());
} // END - if
//* NOISY-DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'EXIT!');