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