aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/session.php
diff options
context:
space:
mode:
authorHenry Sudhof <kellanved@phpbb.com>2008-03-17 16:25:07 +0000
committerHenry Sudhof <kellanved@phpbb.com>2008-03-17 16:25:07 +0000
commitb7ef95ed091580df66da23fc1bca403758645fc3 (patch)
tree131cd972531444dbaac86c334e290d08a36c4b8d /phpBB/includes/session.php
parent217dc8e6d53beb62e6aa5ccaed68b86a9282d88e (diff)
downloadforums-b7ef95ed091580df66da23fc1bca403758645fc3.tar
forums-b7ef95ed091580df66da23fc1bca403758645fc3.tar.gz
forums-b7ef95ed091580df66da23fc1bca403758645fc3.tar.bz2
forums-b7ef95ed091580df66da23fc1bca403758645fc3.tar.xz
forums-b7ef95ed091580df66da23fc1bca403758645fc3.zip
This should get rid of the filesorts and temp tables on index (with topic read tracking as exception).
Updater still needs testing. Not yet merged to 3.1 #22715 - thanks HoL git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@8436 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/session.php')
-rw-r--r--phpBB/includes/session.php9
1 files changed, 8 insertions, 1 deletions
diff --git a/phpBB/includes/session.php b/phpBB/includes/session.php
index affd447787..91b412b075 100644
--- a/phpBB/includes/session.php
+++ b/phpBB/includes/session.php
@@ -129,7 +129,8 @@ class session
'script_path' => str_replace(' ', '%20', htmlspecialchars($script_path)),
'root_script_path' => str_replace(' ', '%20', htmlspecialchars($root_script_path)),
- 'page' => $page
+ 'page' => $page,
+ 'forum' => (isset($_REQUEST['f']) && $_REQUEST['f'] > 0) ? (int) $_REQUEST['f'] : 0,
);
return $page_array;
@@ -186,6 +187,8 @@ class session
// Add forum to the page for tracking online users - also adding a "x" to the end to properly identify the number
$this->page['page'] .= (isset($_REQUEST['f'])) ? ((strpos($this->page['page'], '?') !== false) ? '&' : '?') . '_f_=' . (int) $_REQUEST['f'] . 'x' : '';
+
+
if (isset($_COOKIE[$config['cookie_name'] . '_sid']) || isset($_COOKIE[$config['cookie_name'] . '_u']))
{
@@ -310,6 +313,7 @@ class session
if ($this->update_session_page)
{
$sql_ary['session_page'] = substr($this->page['page'], 0, 199);
+ $sql_ary['session_forum_id'] = $this->page['forum'];
}
$sql = 'UPDATE ' . SESSIONS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . "
@@ -550,6 +554,7 @@ class session
if ($this->update_session_page)
{
$sql_ary['session_page'] = substr($this->page['page'], 0, 199);
+ $sql_ary['session_forum_id'] = $this->page['forum'];
}
$sql = 'UPDATE ' . SESSIONS_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . "
@@ -594,6 +599,7 @@ class session
if ($this->update_session_page)
{
$sql_ary['session_page'] = (string) substr($this->page['page'], 0, 199);
+ $sql_ary['session_forum_id'] = $this->page['forum'];
}
$db->sql_return_on_error(true);
@@ -627,6 +633,7 @@ class session
$sql_ary['session_id'] = (string) $this->session_id;
$sql_ary['session_page'] = (string) substr($this->page['page'], 0, 199);
+ $sql_ary['session_forum_id'] = $this->page['forum'];
$sql = 'INSERT INTO ' . SESSIONS_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary);
$db->sql_query($sql);