diff options
author | Meik Sievertsen <acydburn@phpbb.com> | 2006-09-23 11:10:37 +0000 |
---|---|---|
committer | Meik Sievertsen <acydburn@phpbb.com> | 2006-09-23 11:10:37 +0000 |
commit | 6d08ef7b3ab9e481cc56b94865bb07ade34a80ef (patch) | |
tree | 8cfe68ddc26ab3776a746ea40c99621076d71c33 /phpBB | |
parent | 7542fabaa708677a015ab968724f5b337105702b (diff) | |
download | forums-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.html | 2 | ||||
-rw-r--r-- | phpBB/includes/acm/acm_file.php | 2 | ||||
-rw-r--r-- | phpBB/includes/db/firebird.php | 2 | ||||
-rw-r--r-- | phpBB/includes/db/mssql.php | 34 | ||||
-rw-r--r-- | phpBB/includes/db/mssql_odbc.php | 37 | ||||
-rw-r--r-- | phpBB/includes/db/mysql.php | 4 | ||||
-rw-r--r-- | phpBB/includes/db/mysql4.php | 4 | ||||
-rw-r--r-- | phpBB/includes/db/mysqli.php | 2 | ||||
-rw-r--r-- | phpBB/includes/db/oracle.php | 2 | ||||
-rw-r--r-- | phpBB/includes/db/postgres.php | 2 | ||||
-rw-r--r-- | phpBB/includes/db/sqlite.php | 2 | ||||
-rw-r--r-- | phpBB/includes/functions_messenger.php | 5 | ||||
-rwxr-xr-x | phpBB/includes/mcp/mcp_reports.php | 2 |
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')) . '&mode=reports'); } |