From 5c680ea93fa52f5ed4b14bce4b50331969fbb049 Mon Sep 17 00:00:00 2001 From: Meik Sievertsen Date: Sat, 15 Jan 2005 18:50:22 +0000 Subject: [PATCH] - remove group informations from session queries git-svn-id: file:///svn/phpbb/trunk@5064 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/session.php | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/phpBB/includes/session.php b/phpBB/includes/session.php index d38b445dd2..46a99c2d38 100644 --- a/phpBB/includes/session.php +++ b/phpBB/includes/session.php @@ -80,11 +80,10 @@ class session // session_id exists so go ahead and attempt to grab all data in preparation if (!empty($this->session_id) && (!defined('NEED_SID') || $this->session_id == $_GET['sid'])) { - $sql = 'SELECT u.*, s.*, g.* - FROM ' . SESSIONS_TABLE . ' s, ' . USERS_TABLE . ' u, ' . GROUPS_TABLE . " g + $sql = 'SELECT u.*, s.* + FROM ' . SESSIONS_TABLE . ' s, ' . USERS_TABLE . " u WHERE s.session_id = '" . $db->sql_escape($this->session_id) . "' - AND u.user_id = s.session_user_id - AND g.group_id = u.group_id"; + AND u.user_id = s.session_user_id"; $result = $db->sql_query($sql); $this->data = $db->sql_fetchrow($result); @@ -175,14 +174,12 @@ class session } // Grab user data ... join on session if it exists for session time - $sql = 'SELECT u.*, s.session_time, s.session_id, g.* - FROM (' . USERS_TABLE . ' u, ' . GROUPS_TABLE . ' g + $sql = 'SELECT u.*, s.session_time, s.session_id + FROM (' . USERS_TABLE . ' u LEFT JOIN ' . SESSIONS_TABLE . " s ON s.session_user_id = u.user_id) WHERE u.user_id = $user_id - AND u.group_id = g.group_id ORDER BY s.session_time DESC"; $result = $db->sql_query_limit($sql, 1); - $this->data = $db->sql_fetchrow($result); $db->sql_freeresult($result); @@ -192,9 +189,9 @@ class session $autologin = ''; $this->data['user_id'] = $user_id = ANONYMOUS; - $sql = 'SELECT u.*, g.* - FROM ' . USERS_TABLE . ' u, ' . GROUPS_TABLE . ' g - WHERE u.user_id = ' . ANONYMOUS; + $sql = 'SELECT * + FROM ' . USERS_TABLE . ' + WHERE user_id = ' . ANONYMOUS; $result = $db->sql_query($sql); $this->data = $db->sql_fetchrow($result); @@ -556,7 +553,8 @@ class user extends session { global $SID; - $SID .= '&style=' . request_var('style', 0); + $style = request_var('style', 0); + $SID .= '&style=' . $style; } else { @@ -564,6 +562,7 @@ class user extends session $style = ($style) ? $style : ((!$config['override_user_style'] && $this->data['user_id'] != ANONYMOUS) ? $this->data['user_style'] : $config['default_style']); } + // TODO: DISTINCT making problems with DBMS not able to distinct TEXT fields $sql = 'SELECT DISTINCT s.style_id, t.*, c.*, i.* FROM ' . STYLES_TABLE . ' s, ' . STYLES_TPL_TABLE . ' t, ' . STYLES_CSS_TABLE . ' c, ' . STYLES_IMAGE_TABLE . " i WHERE s.style_id IN ($style, " . $config['default_style'] . ')