From e5bb936f808bfd39a6ba8cbe1fc2ddbcf9bf502f Mon Sep 17 00:00:00 2001
From: admin
Date: Wed, 27 Sep 2006 00:31:22 +0000
Subject:
---
system/database/DB_utility.php | 5 +++--
system/database/drivers/mysql/mysql_utility.php | 2 +-
system/libraries/Controller.php | 20 ++++++++++++++++----
system/libraries/Xmlrpcs.php | 20 ++++++--------------
user_guide/database/utilities.html | 16 +++++++++++++++-
user_guide/libraries/xmlrpc.html | 13 +++++++++++--
6 files changed, 52 insertions(+), 24 deletions(-)
diff --git a/system/database/DB_utility.php b/system/database/DB_utility.php
index 281a3b87d..a2469d059 100644
--- a/system/database/DB_utility.php
+++ b/system/database/DB_utility.php
@@ -191,8 +191,7 @@ class CI_DB_utility {
* Optimize Database
*
* @access public
- * @param string the table name
- * @return bool
+ * @return array
*/
function optimize_database()
{
@@ -207,6 +206,8 @@ class CI_DB_utility {
}
$query = $this->db->query($sql);
+
+ // Build the result array...
$res = current($query->result_array());
$key = str_replace($this->db->database.'.', '', current($res));
$keys = array_keys($res);
diff --git a/system/database/drivers/mysql/mysql_utility.php b/system/database/drivers/mysql/mysql_utility.php
index 9ba4a79c5..a81936c56 100644
--- a/system/database/drivers/mysql/mysql_utility.php
+++ b/system/database/drivers/mysql/mysql_utility.php
@@ -12,7 +12,7 @@
* @since Version 1.0
* @filesource
*/
-
+
// ------------------------------------------------------------------------
/**
diff --git a/system/libraries/Controller.php b/system/libraries/Controller.php
index 23c050e18..56b4d6f90 100644
--- a/system/libraries/Controller.php
+++ b/system/libraries/Controller.php
@@ -468,10 +468,22 @@ class Controller extends CI_Base {
*/
function _ci_init_dbextra($class)
{
- $map = array('dbutil' => 'DB_utility', 'dbexport' => 'DB_export');
- require_once(BASEPATH.'database/'.$map[$class].EXT);
-
- $this->init_class('CI_'.$map[$class], $class);
+ if ( ! $this->_ci_is_loaded('db'))
+ {
+ $this->_init_database();
+ }
+
+ if ($class == 'dbutil')
+ {
+ require_once(BASEPATH.'database/DB_utility'.EXT);
+ require_once(BASEPATH.'database/drivers/'.$this->db->dbdriver.'/'.$this->db->dbdriver.'_utility'.EXT);
+ $this->init_class('CI_DB_'.$this->db->dbdriver.'_utility', 'dbutil');
+ }
+ elseif ($class == 'dbexport')
+ {
+ require_once(BASEPATH.'database/DB_export'.EXT);
+ $this->init_class('CI_DB_export', 'dbexport');
+ }
}
// --------------------------------------------------------------------
diff --git a/system/libraries/Xmlrpcs.php b/system/libraries/Xmlrpcs.php
index a95764a98..f41437342 100644
--- a/system/libraries/Xmlrpcs.php
+++ b/system/libraries/Xmlrpcs.php
@@ -18,13 +18,15 @@ if ( ! function_exists('xml_parser_create'))
show_error('Your PHP installation does not support XML');
}
+if ( ! class_exists('CI_Xmlrpc'))
+{
+ show_error('You must load the Xmlrpc class before loading the Xmlrpcs class in order to create a server.');
+}
// INITIALIZE THE CLASS ---------------------------------------------------
-require_once(BASEPATH.'libraries/Xmlrpc'.EXT);
-
-// The initialization code is at the bottom of this file. It seems to
-// cause an error to have it at the top
+$obj =& get_instance();
+$obj->init_class('CI_Xmlrpcs');
// ------------------------------------------------------------------------
@@ -503,14 +505,4 @@ class CI_Xmlrpcs extends CI_Xmlrpc
}
// END XML_RPC_Server class
-
-// INITIALIZE THE CLASS ---------------------------------------------------
-
-$obj =& get_instance();
-$obj->init_class('CI_Xmlrpc');
-$obj->init_class('CI_Xmlrpcs');
-
-// ------------------------------------------------------------------------
-
-
?>
\ No newline at end of file
diff --git a/user_guide/database/utilities.html b/user_guide/database/utilities.html
index aa2ed3dcd..775c3f239 100644
--- a/user_guide/database/utilities.html
+++ b/user_guide/database/utilities.html
@@ -176,6 +176,20 @@ if ($this->dbutil->optimize_table('table_name'))
+$this->dbutil->optimize_database();
+
+Permits you to optimize the database your DB class is currently connected to. Returns an array containing the returned status messages or FALSE on failure.
+
+
+$result = $this->dbutil->optimize_databas();
+
+if ($result !== FALSE)
+{
+ print_r($result);
+}
+
+
+Note: Not all database platforms support table optimization.
@@ -190,7 +204,7 @@ Previous Topic: Custom Function CallsTop of Page ·
User Guide Home ·
-Next Topic: Email Class
+Next Topic: Database Export Class
Code Igniter · Copyright © 2006 · pMachine, Inc.
diff --git a/user_guide/libraries/xmlrpc.html b/user_guide/libraries/xmlrpc.html
index 1417b4a45..96a52a1a2 100644
--- a/user_guide/libraries/xmlrpc.html
+++ b/user_guide/libraries/xmlrpc.html
@@ -93,9 +93,14 @@ Once processed, the server will then send back a response message.
Once loaded, the xml-rpc library object will be available using: $this->xmlrpc
To load the XML-RPC Server class you will use:
-$this->load->library('xmlrpcs');
+
+$this->load->library('xmlrpc');
+$this->load->library('xmlrpcs');
+
Once loaded, the xml-rpcs library object will be available using: $this->xmlrpcs
+Note: When using the XML-RPC Sever class you must load BOTH the XML-RPC class and the XML-RPC Server class.
+
Sending XML-RPC Requests
@@ -177,7 +182,9 @@ class and method for processing.
Here is an example to illustrate:
-$this->load->library('xmlrpcs');
+
+$this->load->library('xmlrpcs');
+$this->load->library('xmlrpcs');
$config['functions']['new_post']; = array('function' => 'My_blog.new_entry');
$config['functions']['update_post'] = array('function' => 'My_blog.update_entry');
@@ -359,6 +366,8 @@ class Xmlrpc_server extends Controller {
function index()
{
+
+ $this->load->library('xmlrpc');
$this->load->library('xmlrpcs');
$config['functions']['Greetings'] = array('function' => 'Xmlrpc_server.process');
--
cgit v1.2.3-24-g4f1b