aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/db
diff options
context:
space:
mode:
Diffstat (limited to 'phpBB/includes/db')
-rw-r--r--phpBB/includes/db/dbal.php11
-rw-r--r--phpBB/includes/db/mysql.php8
-rw-r--r--phpBB/includes/db/mysql4.php8
3 files changed, 26 insertions, 1 deletions
diff --git a/phpBB/includes/db/dbal.php b/phpBB/includes/db/dbal.php
index c8b0eebc76..68f2f97ade 100644
--- a/phpBB/includes/db/dbal.php
+++ b/phpBB/includes/db/dbal.php
@@ -213,7 +213,16 @@ class dbal
}
else
{
- $message .= '<br /><br />' . $user->lang['SQL_ERROR_OCCURRED'];
+ // If error occurs in initiating the session we need to use a pre-defined language string
+ // This could happen if the connection could not be established for example (then we are not able to grab the default language)
+ if (!isset($user->lang['SQL_ERROR_OCCURRED']))
+ {
+ $message .= '<br /><br />An sql error occurred while fetching this page. Please contact an administrator if this problem persist.';
+ }
+ else
+ {
+ $message .= '<br /><br />' . $user->lang['SQL_ERROR_OCCURRED'];
+ }
}
if ($this->transaction)
diff --git a/phpBB/includes/db/mysql.php b/phpBB/includes/db/mysql.php
index 57aad449d4..36dd73204c 100644
--- a/phpBB/includes/db/mysql.php
+++ b/phpBB/includes/db/mysql.php
@@ -285,6 +285,14 @@ class dbal_mysql extends dbal
*/
function _sql_error()
{
+ if (!$this->db_connect_id)
+ {
+ return array(
+ 'message' => @mysql_error(),
+ 'code' => @mysql_errno()
+ );
+ }
+
return array(
'message' => @mysql_error($this->db_connect_id),
'code' => @mysql_errno($this->db_connect_id)
diff --git a/phpBB/includes/db/mysql4.php b/phpBB/includes/db/mysql4.php
index 9db47f37ee..aa8e22c058 100644
--- a/phpBB/includes/db/mysql4.php
+++ b/phpBB/includes/db/mysql4.php
@@ -288,6 +288,14 @@ class dbal_mysql4 extends dbal
*/
function _sql_error()
{
+ if (!$this->db_connect_id)
+ {
+ return array(
+ 'message' => @mysql_error(),
+ 'code' => @mysql_errno()
+ );
+ }
+
return array(
'message' => @mysql_error($this->db_connect_id),
'code' => @mysql_errno($this->db_connect_id)