aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes
diff options
context:
space:
mode:
authorPaul S. Owen <psotfx@users.sourceforge.net>2001-06-05 22:07:26 +0000
committerPaul S. Owen <psotfx@users.sourceforge.net>2001-06-05 22:07:26 +0000
commitb3cd4a4d36a793fcc5ed9531669b20221f4e7061 (patch)
treec16a0da355b535dab3106f65ca14a10a7a1eeb30 /phpBB/includes
parentba119166a1356601c9b8cc6520acb250be2c08a4 (diff)
downloadforums-b3cd4a4d36a793fcc5ed9531669b20221f4e7061.tar
forums-b3cd4a4d36a793fcc5ed9531669b20221f4e7061.tar.gz
forums-b3cd4a4d36a793fcc5ed9531669b20221f4e7061.tar.bz2
forums-b3cd4a4d36a793fcc5ed9531669b20221f4e7061.tar.xz
forums-b3cd4a4d36a793fcc5ed9531669b20221f4e7061.zip
Latest session code updates
git-svn-id: file:///svn/phpbb/trunk@432 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes')
-rw-r--r--phpBB/includes/sessions.php39
1 files changed, 29 insertions, 10 deletions
diff --git a/phpBB/includes/sessions.php b/phpBB/includes/sessions.php
index e98fc1b101..1957479473 100644
--- a/phpBB/includes/sessions.php
+++ b/phpBB/includes/sessions.php
@@ -163,7 +163,7 @@ function session_begin($user_id, $user_ip, $page_id, $session_length, $login = 0
$SID = ($sessionmethod == SESSION_METHOD_GET) ? "sid=".$sessiondata['sessionid'] : "";
}
- return $sessiondata['lastvisit'];
+ return $session_id;
} // session_begin
@@ -283,6 +283,7 @@ function session_pagestart($user_ip, $thispage_id, $session_length)
// Update was success, send current time to cookie
// and return userdata
//
+ $userdata['session_time'] = $current_time;
$sessiondata['sessiontime'] = $current_time;
$serialised_cookiedata = serialize($sessiondata);
setcookie($cookiename, $serialised_cookiedata, ($current_time+$cookielife), $cookiepath, $cookiedomain, $cookiesecure);
@@ -295,6 +296,7 @@ function session_pagestart($user_ip, $thispage_id, $session_length)
// We didn't need to update session
// so just return userdata
//
+
return $userdata;
}
}
@@ -307,7 +309,6 @@ function session_pagestart($user_ip, $thispage_id, $session_length)
$login = 0;
$autologin = 0;
- $userdata['session_logged_in'] = 0;
if(isset($sessiondata['userid']) && isset($sessiondata['autologinid']))
{
@@ -339,21 +340,19 @@ function session_pagestart($user_ip, $thispage_id, $session_length)
$login = 1;
$autologin = 1;
}
- $userdata['user_id'] = $sessiondata['userid'];
+ $user_id = $sessiondata['userid'];
}
else
{
- unset($userdata);
- $userdata['user_id'] = ANONYMOUS;
- $userdata['session_logged_in'] = 0;
+ $user_id = ANONYMOUS;
}
}
else
{
- $userdata['user_id'] = ANONYMOUS;
+ $user_id = ANONYMOUS;
}
- $result = session_begin($userdata['user_id'], $user_ip, $thispage_id, $session_length, $login, $autologin);
+ $result_id = session_begin($user_id, $user_ip, $thispage_id, $session_length, $login, $autologin);
if(!$result)
{
if(DEBUG)
@@ -365,8 +364,28 @@ function session_pagestart($user_ip, $thispage_id, $session_length)
error_die(SESSION_CREATE);
}
}
- $userdata['session_last_visit'] = $result;
- $userdata['session_ip'] = $user_ip;
+ else
+ {
+ $sql = "SELECT u.*, s.*
+ FROM ".SESSIONS_TABLE." s, ".USERS_TABLE." u
+ WHERE s.session_id = '$result_id'
+ AND s.session_ip = '$user_ip'
+ AND u.user_id = s.session_user_id";
+ $result = $db->sql_query($sql);
+ if (!$result)
+ {
+ if(DEBUG)
+ {
+ error_die(SQL_QUERY, "Error doing DB query userdata row fetch : session_pagestart new user", __LINE__, __FILE__);
+ }
+ else
+ {
+ error_die(SESSION_CREATE);
+ }
+ }
+
+ $userdata = $db->sql_fetchrow($result);
+ }
return $userdata;