aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB
diff options
context:
space:
mode:
authorMeik Sievertsen <acydburn@phpbb.com>2006-09-23 11:10:37 +0000
committerMeik Sievertsen <acydburn@phpbb.com>2006-09-23 11:10:37 +0000
commit6d08ef7b3ab9e481cc56b94865bb07ade34a80ef (patch)
tree8cfe68ddc26ab3776a746ea40c99621076d71c33 /phpBB
parent7542fabaa708677a015ab968724f5b337105702b (diff)
downloadforums-6d08ef7b3ab9e481cc56b94865bb07ade34a80ef.tar
forums-6d08ef7b3ab9e481cc56b94865bb07ade34a80ef.tar.gz
forums-6d08ef7b3ab9e481cc56b94865bb07ade34a80ef.tar.bz2
forums-6d08ef7b3ab9e481cc56b94865bb07ade34a80ef.tar.xz
forums-6d08ef7b3ab9e481cc56b94865bb07ade34a80ef.zip
made sql_rowseek consistent with the dbal methods as well as fixing sql_query_limit for mssql, especially if sql_query_limit($sql, 0, 0) is given...
git-svn-id: file:///svn/phpbb/trunk@6389 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB')
-rw-r--r--phpBB/adm/style/acp_bots.html2
-rw-r--r--phpBB/includes/acm/acm_file.php2
-rw-r--r--phpBB/includes/db/firebird.php2
-rw-r--r--phpBB/includes/db/mssql.php34
-rw-r--r--phpBB/includes/db/mssql_odbc.php37
-rw-r--r--phpBB/includes/db/mysql.php4
-rw-r--r--phpBB/includes/db/mysql4.php4
-rw-r--r--phpBB/includes/db/mysqli.php2
-rw-r--r--phpBB/includes/db/oracle.php2
-rw-r--r--phpBB/includes/db/postgres.php2
-rw-r--r--phpBB/includes/db/sqlite.php2
-rw-r--r--phpBB/includes/functions_messenger.php5
-rwxr-xr-xphpBB/includes/mcp/mcp_reports.php2
13 files changed, 42 insertions, 58 deletions
diff --git a/phpBB/adm/style/acp_bots.html b/phpBB/adm/style/acp_bots.html
index 1924133bfd..bc6c657490 100644
--- a/phpBB/adm/style/acp_bots.html
+++ b/phpBB/adm/style/acp_bots.html
@@ -89,7 +89,7 @@
<input class="button2" name="add" type="submit" value="{L_BOT_ADD}" />
</fieldset>
- <fieldset class="quick">
+ <fieldset class="quick" style="float: right;">
<select name="action">{S_BOT_OPTIONS}</select>
<input class="button2" name="submit" type="submit" value="{L_SUBMIT}" />
</fieldset>
diff --git a/phpBB/includes/acm/acm_file.php b/phpBB/includes/acm/acm_file.php
index b8aed9bcb7..8ba51780eb 100644
--- a/phpBB/includes/acm/acm_file.php
+++ b/phpBB/includes/acm/acm_file.php
@@ -424,7 +424,7 @@ class acm
/**
* Seek a specific row in an a cached database result (database)
*/
- function sql_rowseek($query_id, $rownum)
+ function sql_rowseek($rownum, $query_id)
{
if ($rownum >= sizeof($this->sql_rowset[$query_id]))
{
diff --git a/phpBB/includes/db/firebird.php b/phpBB/includes/db/firebird.php
index 44bbcb4eb3..c58b4efb99 100644
--- a/phpBB/includes/db/firebird.php
+++ b/phpBB/includes/db/firebird.php
@@ -281,7 +281,7 @@ class dbal_firebird extends dbal
if (isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
// We do not fetch the row for rownum == 0 because then the next resultset would be the second row
diff --git a/phpBB/includes/db/mssql.php b/phpBB/includes/db/mssql.php
index 52f442f4fa..96716a8814 100644
--- a/phpBB/includes/db/mssql.php
+++ b/phpBB/includes/db/mssql.php
@@ -172,30 +172,26 @@ class dbal_mssql extends dbal
{
$this->query_result = false;
- // if $total is set to 0 we do not want to limit the number of rows
- if ($total == 0)
+ // Since TOP is only returning a set number of rows we won't need it if total is set to 0 (return all rows)
+ if ($total)
{
- $total = -1;
- }
-
- $row_offset = ($total) ? $offset : '';
- $num_rows = ($total) ? $total : $offset;
-
- if (strpos($query, 'SELECT DISTINCT') === 0)
- {
- $query = 'SELECT DISTINCT TOP ' . ($row_offset + $num_rows) . ' ' . substr($query, 15);
- }
- else
- {
- $query = 'SELECT TOP ' . ($row_offset + $num_rows) . ' ' . substr($query, 6);
+ // We need to grab the total number of rows + the offset number of rows to get the correct result
+ if (strpos($query, 'SELECT DISTINCT') === 0)
+ {
+ $query = 'SELECT DISTINCT TOP ' . ($total + $offset) . ' ' . substr($query, 15);
+ }
+ else
+ {
+ $query = 'SELECT TOP ' . ($total + $offset) . ' ' . substr($query, 6);
+ }
}
$result = $this->sql_query($query, $cache_ttl);
- // Seek by $row_offset rows
- if ($row_offset)
+ // Seek by $offset rows
+ if ($offset)
{
- $this->sql_rowseek($result, $row_offset);
+ $this->sql_rowseek($offset, $result);
}
return $result;
@@ -313,7 +309,7 @@ class dbal_mssql extends dbal
if (isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
return ($query_id) ? @mssql_data_seek($query_id, $rownum) : false;
diff --git a/phpBB/includes/db/mssql_odbc.php b/phpBB/includes/db/mssql_odbc.php
index 54655c389a..09437a1780 100644
--- a/phpBB/includes/db/mssql_odbc.php
+++ b/phpBB/includes/db/mssql_odbc.php
@@ -168,33 +168,26 @@ class dbal_mssql_odbc extends dbal
{
$this->query_result = false;
- // if $total is set to 0 we do not want to limit the number of rows
- if ($total == 0)
+ // Since TOP is only returning a set number of rows we won't need it if total is set to 0 (return all rows)
+ if ($total)
{
- $total = -1;
- }
-
- $row_offset = ($total) ? $offset : 0;
- $num_rows = ($total) ? $total : $offset;
-
- if (strpos($query, 'SELECT DISTINCT') === 0)
- {
- $query = 'SELECT DISTINCT TOP ' . ($row_offset + $num_rows) . ' ' . substr($query, 15);
- }
- else
- {
- $query = 'SELECT TOP ' . ($row_offset + $num_rows) . ' ' . substr($query, 6);
+ // We need to grab the total number of rows + the offset number of rows to get the correct result
+ if (strpos($query, 'SELECT DISTINCT') === 0)
+ {
+ $query = 'SELECT DISTINCT TOP ' . ($total + $offset) . ' ' . substr($query, 15);
+ }
+ else
+ {
+ $query = 'SELECT TOP ' . ($total + $offset) . ' ' . substr($query, 6);
+ }
}
$result = $this->sql_query($query, $cache_ttl);
- // Seek by $row_offset rows
- if ($row_offset)
+ // Seek by $offset rows
+ if ($offset)
{
- for ($i = 0; $i < $row_offset; $i++)
- {
- $this->sql_fetchrow($result);
- }
+ $this->sql_rowseek($offset, $result);
}
return $result;
@@ -301,7 +294,7 @@ class dbal_mssql_odbc extends dbal
if (isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
$this->sql_freeresult($query_id);
diff --git a/phpBB/includes/db/mysql.php b/phpBB/includes/db/mysql.php
index 099e1cf11a..6aadd812a4 100644
--- a/phpBB/includes/db/mysql.php
+++ b/phpBB/includes/db/mysql.php
@@ -249,7 +249,7 @@ class dbal_mysql extends dbal
{
if (isset($cache->sql_rowset[$query_id]))
{
- $cache->sql_rowseek($query_id, $rownum);
+ $cache->sql_rowseek($rownum, $query_id);
return $cache->sql_fetchfield($query_id, $field);
}
@@ -275,7 +275,7 @@ class dbal_mysql extends dbal
if (isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
return ($query_id) ? @mysql_data_seek($query_id, $rownum) : false;
diff --git a/phpBB/includes/db/mysql4.php b/phpBB/includes/db/mysql4.php
index 821fc777da..cd1d7f9cf8 100644
--- a/phpBB/includes/db/mysql4.php
+++ b/phpBB/includes/db/mysql4.php
@@ -252,7 +252,7 @@ class dbal_mysql4 extends dbal
{
if (isset($cache->sql_rowset[$query_id]))
{
- $cache->sql_rowseek($query_id, $rownum);
+ $cache->sql_rowseek($rownum, $query_id);
return $cache->sql_fetchfield($query_id, $field);
}
@@ -278,7 +278,7 @@ class dbal_mysql4 extends dbal
if (isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
return ($query_id) ? @mysql_data_seek($query_id, $rownum) : false;
diff --git a/phpBB/includes/db/mysqli.php b/phpBB/includes/db/mysqli.php
index a8773892f7..554d9ddb60 100644
--- a/phpBB/includes/db/mysqli.php
+++ b/phpBB/includes/db/mysqli.php
@@ -270,7 +270,7 @@ class dbal_mysqli extends dbal
if (!is_object($query_id) && isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
return ($query_id) ? @mysqli_data_seek($query_id, $rownum) : false;
diff --git a/phpBB/includes/db/oracle.php b/phpBB/includes/db/oracle.php
index 1d14d7b793..a1dc33c566 100644
--- a/phpBB/includes/db/oracle.php
+++ b/phpBB/includes/db/oracle.php
@@ -403,7 +403,7 @@ class dbal_oracle extends dbal
if (isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
if (!$query_id)
diff --git a/phpBB/includes/db/postgres.php b/phpBB/includes/db/postgres.php
index ff58269f51..4714f29a00 100644
--- a/phpBB/includes/db/postgres.php
+++ b/phpBB/includes/db/postgres.php
@@ -319,7 +319,7 @@ class dbal_postgres extends dbal
if (isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
return ($query_id) ? @pg_result_seek($query_id, $rownum) : false;
diff --git a/phpBB/includes/db/sqlite.php b/phpBB/includes/db/sqlite.php
index 65be2fef64..6204131175 100644
--- a/phpBB/includes/db/sqlite.php
+++ b/phpBB/includes/db/sqlite.php
@@ -266,7 +266,7 @@ class dbal_sqlite extends dbal
if (isset($cache->sql_rowset[$query_id]))
{
- return $cache->sql_rowseek($query_id, $rownum);
+ return $cache->sql_rowseek($rownum, $query_id);
}
return ($query_id) ? @sqlite_seek($query_id, $rownum) : false;
diff --git a/phpBB/includes/functions_messenger.php b/phpBB/includes/functions_messenger.php
index d5d9c8dd5e..983ec7f0a5 100644
--- a/phpBB/includes/functions_messenger.php
+++ b/phpBB/includes/functions_messenger.php
@@ -1358,11 +1358,6 @@ class smtp_class
*/
function mail_encode($str)
{
- if ($encoding == '')
- {
- return $str;
- }
-
// define start delimimter, end delimiter and spacer
$end = "?=";
$start = "=?UTF-8?B?";
diff --git a/phpBB/includes/mcp/mcp_reports.php b/phpBB/includes/mcp/mcp_reports.php
index 67af086292..56d5fdedba 100755
--- a/phpBB/includes/mcp/mcp_reports.php
+++ b/phpBB/includes/mcp/mcp_reports.php
@@ -364,7 +364,7 @@ function close_report($post_id_list, $mode, $action)
trigger_error('NOT_AUTHORIZED');
}
- if (($action == 'delete') && (strpos($user->data['session_page'], 'mode=report_details') !== false))
+ if ($action == 'delete' && strpos($user->data['session_page'], 'mode=report_details') !== false)
{
$redirect = request_var('redirect', build_url(array('mode')) . '&amp;mode=reports');
}