Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

visitante_php

[Resolvido] erro em nao objeto

Recommended Posts

eu to tentando estudar zend e segui ao pe da letra usando este tutorial....

 

http://akrabat.com/wp-content/uploads/gett...amework_142.pdf

 

e esta aparecendo esta mensagem de erro..

 

Notice: Trying to get property of non-object in C:\xampp\htdocs\zend\index.php on line 27

 

Notice: Trying to get property of non-object in C:\xampp\htdocs\zend\index.php on line 27

 

Fatal error: Call to a member function toArray() on a non-object in C:\xampp\htdocs\zend\index.php on line 27

e o arquivo esta como no tutorial...

 

 

<?php

/**
 * @author 5223756407
 * @copyright 2008
 */

error_reporting(E_ALL|E_STRICT);
date_default_timezone_set('America/Sao_paulo');
set_include_path('.'.PATH_SEPARATOR.'./library'.PATH_SEPARATOR.'./application/models/'.PATH_SEPARATOR.get_include_path());
include('Zend/Loader.php');

Zend_Loader::loadClass('Zend_Controller_Front');

Zend_Loader::loadClass('Zend_Controller_Front');
Zend_Loader::loadClass('Zend_Config_Ini');
Zend_Loader::loadClass('Zend_Registry');
Zend_Loader::loadClass('Zend_Db');
Zend_Loader::loadClass('Zend_Db_Table');

//load configuration
$config = new Zend_Config_Ini('./application/config.ini');
$registry = Zend_Registry::getInstance();
$registry->set('config',$config);

//registr database
$db = Zend_Db::factory($config->db->adapter, $config->db->config->toArray());
Zend_Db_Table::setDefaultAdapter($db);

//setup controller
$frontController = Zend_Controller_Front::getInstance();
$frontController->trowExceptions(true);
$frontController->setBaseUrl('zend');
$frontController->setControllerDirectory('./application/controllers');

//run
$frontController->dispatch();

como resolvo...?

Compartilhar este post


Link para o post
Compartilhar em outros sites

A linha é esta ?

$db = Zend_Db::factory($config->db->adapter, $config->db->config->toArray());
Se for, é bem provavel que o erro esteja no arquivo config.ini, chamado aqui:

$config = new Zend_Config_Ini('./application/config.ini');
Deixa eu ver o config.ini

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim, eh nessa linha sim...o config.ini abaixo

 

[general]
db.adapter = PDO_MYSQL
db.config.host = localhost:327
db.config.username = rob
db.config.password = 
db.config.dbname = zend

como estou usando o xamp e nao consegui trocar a senha, a deixei em branco.... =/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acredito que o erro esteja aqui:

db.config.host = localhost:327
deixa

db.config.host = localhost
E você vai carregar os valores da sessão 'general', que deve ser declarada também, assim:

$config = new Zend_Config_Ini('./application/config.ini', 'general');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Onde tem esse monte de

 

Zend_Loader::loadClass('Zend_Controller_Front');

Zend_Loader::loadClass('Zend_Controller_Front');

Zend_Loader::loadClass('Zend_Config_Ini');

Zend_Loader::loadClass('Zend_Registry');

Zend_Loader::loadClass('Zend_Db');

Zend_Loader::loadClass('Zend_Db_Table');

 

troca por

Zend_Loader::registerAutoload();

 

Só uma dica.. assim você nao precisa ficar dando load em cada classe que for utilizar.. só instanciar e pronto! ;)

 

Abraço.

 

Att,

Leandro Barral.

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora o erro mudou....

 

 

Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (d)' in C:\xampp\htdocs\zend\library\Zend\Controller\Dispatcher\Standard.php:241 Stack trace: #0 C:\xampp\htdocs\zend\library\Zend\Controller\Front.php(934): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 C:\xampp\htdocs\zend\index.php(32): Zend_Controller_Front->dispatch() #2 {main} thrown in C:\xampp\htdocs\zend\library\Zend\Controller\Dispatcher\Standard.php on line 241

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, agora a questão é outra. Por favor abra um novo tópico.

Entendeu como foi resolvido esta questão ? Se não entendeu os erros que cometeu diz aí que eu te explico.

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao seria o mesmo problema.. o problema de non-object foi resolvido.. o problema agora é com os controladores.. como está o controlador do index?

 

posta ae ou abre outro tópico com esse problema..

 

Abraço.

 

Att,

Leandro Barral.

 

P.S.: Porque não tenta seguir os tutoriais do Fabyo, se nao me engano estão mais atualizados...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.