diff options
Diffstat (limited to 'system/database')
-rw-r--r-- | system/database/DB.php | 6 | ||||
-rw-r--r-- | system/database/DB_driver.php | 4 | ||||
-rw-r--r-- | system/database/DB_query_builder.php | 3 | ||||
-rw-r--r-- | system/database/drivers/mssql/mssql_result.php | 1 | ||||
-rw-r--r-- | system/database/drivers/mysql/mysql_result.php | 1 | ||||
-rw-r--r-- | system/database/drivers/mysqli/mysqli_result.php | 1 | ||||
-rw-r--r-- | system/database/drivers/pdo/pdo_driver.php | 7 |
7 files changed, 10 insertions, 13 deletions
diff --git a/system/database/DB.php b/system/database/DB.php index f94685c51..83d973304 100644 --- a/system/database/DB.php +++ b/system/database/DB.php @@ -43,7 +43,7 @@ function &DB($params = '', $query_builder_override = NULL) if (is_string($params) && strpos($params, '://') === FALSE) { // Is the config file in the environment folder? - if (( ! defined('ENVIRONMENT') OR ! file_exists($file_path = APPPATH.'config/'.ENVIRONMENT.'/database.php')) + if ( ! file_exists($file_path = APPPATH.'config/'.ENVIRONMENT.'/database.php') && ! file_exists($file_path = APPPATH.'config/database.php')) { show_error('The configuration file database.php does not exist.'); @@ -149,7 +149,7 @@ function &DB($params = '', $query_builder_override = NULL) if ( ! isset($query_builder) OR $query_builder === TRUE) { require_once(BASEPATH.'database/DB_query_builder.php'); - if ( ! class_exists('CI_DB')) + if ( ! class_exists('CI_DB', FALSE)) { /** * CI_DB @@ -162,7 +162,7 @@ function &DB($params = '', $query_builder_override = NULL) class CI_DB extends CI_DB_query_builder { } } } - elseif ( ! class_exists('CI_DB')) + elseif ( ! class_exists('CI_DB', FALSE)) { /** * @ignore diff --git a/system/database/DB_driver.php b/system/database/DB_driver.php index cb2ef4ac8..6ae1d524d 100644 --- a/system/database/DB_driver.php +++ b/system/database/DB_driver.php @@ -625,7 +625,7 @@ abstract class CI_DB_driver { // if transactions are enabled. If we don't call this here // the error message will trigger an exit, causing the // transactions to remain in limbo. - $this->trans_complete(); + $this->_trans_depth > 0 && $this->trans_complete(); // Display errors return $this->display_error(array('Error Number: '.$error['code'], $error['message'], $sql)); @@ -1560,7 +1560,7 @@ abstract class CI_DB_driver { */ protected function _cache_init() { - if (class_exists('CI_DB_Cache')) + if (class_exists('CI_DB_Cache', FALSE)) { if (is_object($this->CACHE)) { diff --git a/system/database/DB_query_builder.php b/system/database/DB_query_builder.php index ac377d996..85a233b50 100644 --- a/system/database/DB_query_builder.php +++ b/system/database/DB_query_builder.php @@ -937,7 +937,7 @@ abstract class CI_DB_query_builder extends CI_DB_driver { $this->qb_where[] = array('condition' => $like_statement, 'escape' => $escape); if ($this->qb_caching === TRUE) { - $this->qb_cache_where[] = $like_statement; + $this->qb_cache_where[] = array('condition' => $like_statement, 'escape' => $escape); $this->qb_cache_exists[] = 'where'; } } @@ -2627,6 +2627,7 @@ abstract class CI_DB_query_builder extends CI_DB_driver { $this->_reset_run(array( 'qb_set' => array(), 'qb_from' => array(), + 'qb_join' => array(), 'qb_where' => array(), 'qb_orderby' => array(), 'qb_keys' => array(), diff --git a/system/database/drivers/mssql/mssql_result.php b/system/database/drivers/mssql/mssql_result.php index ea3f8e4d1..b6e5f2b17 100644 --- a/system/database/drivers/mssql/mssql_result.php +++ b/system/database/drivers/mssql/mssql_result.php @@ -74,6 +74,7 @@ class CI_DB_mssql_result extends CI_DB_result { public function list_fields() { $field_names = array(); + mssql_field_seek($this->result_id, 0); while ($field = mssql_fetch_field($this->result_id)) { $field_names[] = $field->name; diff --git a/system/database/drivers/mysql/mysql_result.php b/system/database/drivers/mysql/mysql_result.php index 1ed2759b6..a2affcb58 100644 --- a/system/database/drivers/mysql/mysql_result.php +++ b/system/database/drivers/mysql/mysql_result.php @@ -89,6 +89,7 @@ class CI_DB_mysql_result extends CI_DB_result { public function list_fields() { $field_names = array(); + mysql_field_seek($this->result_id, 0); while ($field = mysql_fetch_field($this->result_id)) { $field_names[] = $field->name; diff --git a/system/database/drivers/mysqli/mysqli_result.php b/system/database/drivers/mysqli/mysqli_result.php index 4105f99f6..3fe05f9c5 100644 --- a/system/database/drivers/mysqli/mysqli_result.php +++ b/system/database/drivers/mysqli/mysqli_result.php @@ -74,6 +74,7 @@ class CI_DB_mysqli_result extends CI_DB_result { public function list_fields() { $field_names = array(); + $this->result_id->field_seek(0); while ($field = $this->result_id->fetch_field()) { $field_names[] = $field->name; diff --git a/system/database/drivers/pdo/pdo_driver.php b/system/database/drivers/pdo/pdo_driver.php index 34adf0f86..fa89661b1 100644 --- a/system/database/drivers/pdo/pdo_driver.php +++ b/system/database/drivers/pdo/pdo_driver.php @@ -49,13 +49,6 @@ class CI_DB_pdo_driver extends CI_DB { public $dbdriver = 'pdo'; /** - * Transaction enabled flag - * - * @var bool - */ - public $trans_enabled = FALSE; - - /** * PDO Options * * @var array |