1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-05 00:07:44 +02:00

Merge branch 'develop-olympus' into develop

* develop-olympus:
  [ticket/10205] Reduce nesting in mysql drivers.
  [ticket/10205] Rewrite _sql_error implementations to have a single return.
  [ticket/10205] Cosmetic changes.
  [ticket/10205] Add some columns to the empty fixture file for mssqlnative.
  [ticket/10205] Delete stray return.
  [ticket/10205] Test failed connection attempts.
  [ticket/10205] Check for function existence in mssql connect method.
  [ticket/10205] Convert mssqlnative driver to the same logic.
  [ticket/10205] Fix a parse error in oracle driver.
  [ticket/10205] Fix remaining db drivers.
  [ticket/10205] Avoid calling mysqli functions when mysqli is missing.
  [ticket/10205] Account for potentially missing extensions in dbal.

Conflicts:
	tests/fixtures/empty.xml
This commit is contained in:
Andreas Fischer
2012-12-08 03:08:21 +01:00
9 changed files with 301 additions and 77 deletions

View File

@@ -31,6 +31,7 @@ include_once($phpbb_root_path . 'includes/db/dbal.' . $phpEx);
class dbal_mssql_odbc extends dbal
{
var $last_query_text = '';
var $connect_error = '';
/**
* Connect to server
@@ -67,7 +68,24 @@ class dbal_mssql_odbc extends dbal
@ini_set('odbc.defaultlrl', $max_size);
}
$this->db_connect_id = ($this->persistency) ? @odbc_pconnect($this->server, $this->user, $sqlpassword) : @odbc_connect($this->server, $this->user, $sqlpassword);
if ($this->persistency)
{
if (!function_exists('odbc_pconnect'))
{
$this->connect_error = 'odbc_pconnect function does not exist, is odbc extension installed?';
return $this->sql_error('');
}
$this->db_connect_id = @odbc_pconnect($this->server, $this->user, $sqlpassword);
}
else
{
if (!function_exists('odbc_connect'))
{
$this->connect_error = 'odbc_connect function does not exist, is odbc extension installed?';
return $this->sql_error('');
}
$this->db_connect_id = @odbc_connect($this->server, $this->user, $sqlpassword);
}
return ($this->db_connect_id) ? $this->db_connect_id : $this->sql_error('');
}
@@ -349,10 +367,22 @@ class dbal_mssql_odbc extends dbal
*/
function _sql_error()
{
return array(
'message' => @odbc_errormsg(),
'code' => @odbc_error()
);
if (function_exists('odbc_errormsg'))
{
$error = array(
'message' => @odbc_errormsg(),
'code' => @odbc_error(),
);
}
else
{
$error = array(
'message' => $this->connect_error,
'code' => '',
);
}
return $error;
}
/**