-- Garri Santos <[EMAIL PROTECTED]> wrote
(on Wednesday, 06 February 2008, 10:43 AM +0800):
> Good Day,
>
> Im not sure anymore whether it's my xml file or is it Zend_Config_Xml has the
> problem. Here's my xml file.
>
> config.xml
> <?xml version="1.0" encoding="UTF-8" ?>
> <configuration>
> <default>
> <baseurl>/ubraa/public</baseurl>
> <database>
> <type>pdo_mysql</type>
> <host>localhost</host>
> <username>root</username>
> <password>password</password>
> <dbname>ubraa</dbname>
> </database>
> </default>
> </configuration>
>
> After doing this:
>
> $this->config = new Zend_Config_Xml($this->ubraaRoot . DIRECTORY_SEPARATOR .
> 'configuration' . DIRECTORY_SEPARATOR .
> 'config.xml', 'default');
>
> The Zend_Db::factory($config->type, $config); is throwing me an error
Um... shouldn't that be
Zend_Db::factory($config->database->type, $config->database);
?
Based on the structure of your XML, you're not pulling from the correct
location in the config...
> Adapter parameters must be in an array or a Zend_Config object
>
> I have var_dump($this->config->database) and these is the result:
>
> object(Zend_Config_Xml)#2 (6) {
> ["_allowModifications:protected"]=>
> bool(false)
> ["_index:protected"]=>
> int(0)
> ["_count:protected"]=>
> int(2)
> ["_data:protected"]=>
> array(2) {
> ["baseurl"]=>
> string(13) "/ubraa/public"
> ["database"]=>
> object(Zend_Config)#4 (6) {
> ["_allowModifications:protected"]=>
> bool(false)
> ["_index:protected"]=>
> int(0)
> ["_count:protected"]=>
> int(5)
> ["_data:protected"]=>
> array(5) {
> ["type"]=>
> string(9) "pdo_mysql"
> ["host"]=>
> string(9) "localhost"
> ["username"]=>
> string(4) "root"
> ["password"]=>
> string(8) "password"
> ["dbname"]=>
> string(5) "ubraa"
> }
> ["_loadedSection:protected"]=>
> NULL
> ["_extends:protected"]=>
> array(0) {
> }
> }
> }
> ["_loadedSection:protected"]=>
> string(7) "default"
> ["_extends:protected"]=>
> array(0) {
> }
> }
>
> Notice that the Zend_Config produce by the Zend_Config_Xml is missing "params"
> w/c should contain a correct Zend_Config Object like this:
> $configuration = new Zend_Config(
> array(
> 'database' => array(
> 'adapter' => 'Mysqli',
> 'params' => array(
> 'dbname' => 'test',
> 'username' => 'webuser',
> 'password' => 'secret',
> )
> )
> )
> );
>
> object(Zend_Config)#32 (6) {
> ["_allowModifications:protected"]=>
> bool(false)
> ["_index:protected"]=>
> int(0)
> ["_count:protected"]=>
> int(1)
> ["_data:protected"]=>
> array(1) {
> ["database"]=>
> object(Zend_Config)#40 (6) {
> ["_allowModifications:protected"]=>
> bool(false)
> ["_index:protected"]=>
> int(0)
> ["_count:protected"]=>
> int(2)
> ["_data:protected"]=>
> array(2) {
> ["adapter"]=>
> string(6) "Mysqli"
> ["params"]=>
> object(Zend_Config)#43 (6) {
> ["_allowModifications:protected"]=>
> bool(false)
> ["_index:protected"]=>
> int(0)
> ["_count:protected"]=>
> int(3)
> ["_data:protected"]=>
> array(3) {
> ["dbname"]=>
> string(4) "test"
> ["username"]=>
> string(7) "webuser"
> ["password"]=>
> string(6) "secret"
> }
> ["_loadedSection:protected"]=>
> NULL
> ["_extends:protected"]=>
> array(0) {
> }
> }
> }
> ["_loadedSection:protected"]=>
> NULL
> ["_extends:protected"]=>
> array(0) {
> }
> }
> }
> ["_loadedSection:protected"]=>
> NULL
> ["_extends:protected"]=>
> array(0) {
> }
> }
>
>
> Thanks,
> Garri
--
Matthew Weier O'Phinney
PHP Developer | [EMAIL PROTECTED]
Zend - The PHP Company | http://www.zend.com/