summaryrefslogtreecommitdiffstats
path: root/system/database
diff options
context:
space:
mode:
Diffstat (limited to 'system/database')
-rw-r--r--system/database/DB.php6
-rw-r--r--system/database/DB_driver.php4
-rw-r--r--system/database/DB_query_builder.php3
-rw-r--r--system/database/drivers/mssql/mssql_result.php1
-rw-r--r--system/database/drivers/mysql/mysql_result.php1
-rw-r--r--system/database/drivers/mysqli/mysqli_result.php1
-rw-r--r--system/database/drivers/pdo/pdo_driver.php7
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