diff options
-rw-r--r-- | system/application/config/database.php | 4 | ||||
-rw-r--r-- | system/database/DB.php | 8 | ||||
-rw-r--r-- | user_guide/database/configuration.html | 24 | ||||
-rw-r--r-- | user_guide/database/connecting.html | 1 | ||||
-rw-r--r-- | user_guide/installation/upgrade_160.html | 7 |
5 files changed, 30 insertions, 14 deletions
diff --git a/system/application/config/database.php b/system/application/config/database.php index 59b973981..472affbe5 100644 --- a/system/application/config/database.php +++ b/system/application/config/database.php @@ -22,7 +22,6 @@ | to the table name when using the Active Record class
| ['pconnect'] TRUE/FALSE - Whether to use a persistent connection
| ['db_debug'] TRUE/FALSE - Whether database errors should be displayed.
-| ['active_r'] TRUE/FALSE - Whether to load the active record class
| ['cache_on'] TRUE/FALSE - Enables/disables query caching
| ['cachedir'] The path to the folder where cache files should be stored
| ['char_set'] The character set used in communicating with the database
@@ -31,9 +30,12 @@ | The $active_group variable lets you choose which connection group to
| make active. By default there is only one group (the "default" group).
|
+| The $active_record variables lets you determine whether or not to load
+| the active record class
*/
$active_group = "default";
+$active_record = TRUE;
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "";
diff --git a/system/database/DB.php b/system/database/DB.php index abd782c34..8f25e5e1a 100644 --- a/system/database/DB.php +++ b/system/database/DB.php @@ -22,7 +22,7 @@ * @author ExpressionEngine Dev Team
* @link http://codeigniter.com/user_guide/database/
*/
-function &DB($params = '', $active_record = FALSE)
+function &DB($params = '', $active_record_override = FALSE)
{
// Load the DB config file if a DSN string wasn't passed
if (is_string($params) AND strpos($params, '://') === FALSE)
@@ -58,14 +58,14 @@ function &DB($params = '', $active_record = FALSE) // based on whether we're using the active record class or not.
// Kudos to Paul for discovering this clever use of eval()
- if ($active_record == TRUE)
+ if ($active_record_override == TRUE)
{
- $params['active_r'] = TRUE;
+ $active_record = TRUE;
}
require_once(BASEPATH.'database/DB_driver'.EXT);
- if ( ! isset($params['active_r']) OR $params['active_r'] == TRUE)
+ if ($active_record == TRUE)
{
require_once(BASEPATH.'database/DB_active_rec'.EXT);
diff --git a/user_guide/database/configuration.html b/user_guide/database/configuration.html index 1c44858f7..dafdd024f 100644 --- a/user_guide/database/configuration.html +++ b/user_guide/database/configuration.html @@ -75,9 +75,10 @@ $db['default']['dbdriver'] = "mysql";<br /> $db['default']['dbprefix'] = "";<br />
$db['default']['pconnect'] = TRUE;<br />
$db['default']['db_debug'] = FALSE;<br />
-$db['default']['active_r'] = TRUE;<br />
$db['default']['cache_on'] = FALSE;<br />
-$db['default']['cachedir'] = "";</code>
+$db['default']['cachedir'] = "";<br />
+$db['default']['char_set'] = "utf8";<br />
+$db['default']['dbcollat'] = "utf8_general_ci";</code>
<p>The reason we use a multi-dimensional array rather than a more simple one is to permit you to optionally store
multiple sets of connection values. If, for example, you run multiple environments (development, production, test, etc.)
@@ -92,9 +93,10 @@ $db['test']['dbdriver'] = "mysql";<br /> $db['test']['dbprefix'] = "";<br />
$db['test']['pconnect'] = TRUE;<br />
$db['test']['db_debug'] = FALSE;<br />
-$db['test']['active_r'] = TRUE;<br />
-$db['default']['cache_on'] = FALSE;<br />
-$db['default']['cachedir'] = "";</code>
+$db['test']['cache_on'] = FALSE;<br />
+$db['test']['cachedir'] = "";<br />
+$db['test']['char_set'] = "utf8";<br />
+$db['test']['dbcollat'] = "utf8_general_ci";</code>
<p>Then, to globally tell the system to use that group you would set this variable located in the config file:</p>
@@ -104,6 +106,14 @@ $db['default']['cachedir'] = "";</code> <p>Note: The name "test" is arbitrary. It can be anything you want. By default we've used the word "default"
for the primary connection, but it too can be renamed to something more relevant to your project.</p>
+<h3>Active Record</h3>
+
+<p>The <a href="active_record.html">Active Record Class</a> is globally enabled or disabled by setting the $active_record variable in the database configuration file to TRUE/FALSE (boolean). If you are not using the active record class, setting it to FALSE will utilize fewer resources when the database classes are initialized.</p>
+
+<code>$active_record = TRUE;</code>
+
+<p class="important"><strong>Note:</strong> that some CodeIgniter classes such as Sessions require Active Records be enabled to access certain functionality.</p>
+
<h3>Explanation of Values:</h3>
<ul>
@@ -115,10 +125,10 @@ for the primary connection, but it too can be renamed to something more relevant <li><strong>dbprefix</strong> - An optional table prefix which will added to the table name when running <a href="active_record.html">Active Record</a> queries. This permits multiple CodeIgniter installations to share one database.</li>
<li><strong>pconnect</strong> - TRUE/FALSE (boolean) - Whether to use a persistent connection.</li>
<li><strong>db_debug</strong> - TRUE/FALSE (boolean) - Whether database errors should be displayed.</li>
-<li><strong>active_r</strong> - TRUE/FALSE (boolean) - Whether to load the <a href="active_record.html">Active Record Class</a>. If you are not using the active record class you can have it omitted when the database classes are initialized in order to utilize less resources.
-<p class="important"><strong>Note:</strong> that some CodeIgniter classes such as Sessions require Active Records be enabled to access certain functionality.</p></li>
<li><strong>cache_on</strong> - TRUE/FALSE (boolean) - Whether database query caching is enabled, see also <a href="caching.html">Database Caching Class</a>.</li>
<li><strong>cachedir</strong> - The absolute server path to your database query cache directory.</li>
+<li><strong>char_set</strong> - The character set used in communicating with the database.</li>
+<li><strong>dbcollat</strong> - The character collation used in communicating with the database.</li>
<li><strong>port</strong> - The database port number. Currently only used with the Postgre driver. To use this value you have to add a line to the database config array.<code>$db['default']['port'] = 5432;</code></li>
</ul>
diff --git a/user_guide/database/connecting.html b/user_guide/database/connecting.html index 98a5d3784..ea4d18904 100644 --- a/user_guide/database/connecting.html +++ b/user_guide/database/connecting.html @@ -102,7 +102,6 @@ $config['dbdriver'] = "mysql";<br /> $config['dbprefix'] = "";<br />
$config['pconnect'] = FALSE;<br />
$config['db_debug'] = TRUE;<br />
-$config['active_r'] = TRUE;<br />
<br />
$this->load->database(<samp>$config</samp>);</code>
diff --git a/user_guide/installation/upgrade_160.html b/user_guide/installation/upgrade_160.html index 9cddf6b61..4b513d506 100644 --- a/user_guide/installation/upgrade_160.html +++ b/user_guide/installation/upgrade_160.html @@ -82,7 +82,12 @@ Upgrading from 1.5.3 to 1.5.4 <p><code>$config['sess_time_to_update'] = 300;</code></p>
<h2>Step 3: Add to your database.php </h2>
-<p>Add the following to system/application/config/database.php with the other database configuration options</p>
+<p>Make the following changes to your system/application/config/database.php file:</p>
+<p>Add the following variable above the database configuration options, with <dfn>$active_group</dfn></p>
+<p><code>$active_record = TRUE;</code></p>
+<p>Remove the following from your database configuration options</p>
+<p><code>$db['default']['active_r'] = TRUE;</code></p>
+<p>Add the following to your database configuration options</p>
<p><code>$db['default']['char_set'] = "utf8";<br />
$db['default']['dbcollat'] = "utf8_general_ci";</code></p>
|