Problema com Com Zend Controller

Zend_Controller, Zend_Controller_Action, Zend_Controller_Dispatcher, Zend_Controller_Plugin, Zend_Controller_RewriteRouter, Zend_View, Zend_Http_Request, Zend_Http_Response

Moderador: chackal_sjc

Problema com Com Zend Controller

Mensagempor billyjoe » Sáb Fev 27, 2010 4:47 pm

Estou usando a versão 1.9
Segue bootstrap:

<?php
require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance()->setFallbackAutoloader(true);

$default = '../application/default/controllers/';


Zend_Controller_Front::getInstance()
->throwExceptions(TRUE)
->setControllerDirectory(
array ('default' => $default))
->dispatch();

funciona local, mas quando envio para o servidor dá o erro:

Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (index)' in /home/site/library/Zend/Controller/Dispatcher/Standard.php:242 Stack trace: #0 /home/site/library/Zend/Controller/Front.php(946): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 /home/site/public_html/index.php(39): Zend_Controller_Front->dispatch() #2 {main} thrown in /home/site/library/Zend/Controller/Dispatcher/Standard.php on line 242

Esse erro indica que não está encontrando ao controlador index.
Depois de muitos testes, descobri que se eu fizer o include do controlador funciona (mas é logco que eu não vou encher o projeto de includes).

include_once '../application/default/controllers/index/indexController.php';

já me disseram que poderia ser o RewriteEngine On do htacsses mas já enviei o mesmo htacesses que estava funcionando
local para o servidor e nada. Parece ser alguma configuração do servidor de hospedagem, se algem tiver uma iéia do que seja, posta aí. Valeu!
billyjoe
Leitor
 
Mensagens: 3
Data de registro: Sáb Fev 27, 2010 4:02 pm

Re: Problema com Com Zend Controller

Mensagempor TulioBraga » Sáb Fev 27, 2010 7:25 pm

include_once '../application/default/controllers/index/indexController.php';

Observe, o nome do seu controller inicia-se com letra minúscula (indexController). Quando você usava localmente (provavelmente em ambiente window), nenhum problema ocorria, pois o sistema é case insensitive (indiferente quanto a letras maiúsculas e minúsculas), mas ao enviar para o servidor (provavelmente ambiente linux), ocorreu o problema, já que este é case sensitive (difere quanto a letras maiúsculas e minúsculas).

Creio que mudar o nome do arquivo e da classe, caso esta também esteja em minúsculo, para IndexController.php e IndexController, respectivamente, resolva seu problema.

Até.
Avatar de usuário
TulioBraga
Participante
 
Mensagens: 97
Data de registro: Sex Mar 06, 2009 12:00 am
Localização: Belo Horizonte

Re: Problema com Com Zend Controller

Mensagempor billyjoe » Dom Fev 28, 2010 10:13 am

Valeu! deu certo! era isso mesmo.

Mas apereceu outro problema na hora se setar o adaptador para Zend_Db_Table (o erro só aperece no servidor linux)

The PDO extension is required for this adapter but the extension is not loaded

segue bootstrap:

<?php

$config = new Zend_Config_Ini ( '../application/default/config/config.ini', 'producao' );
$db = Zend_Db::factory ( $config->db->adapter, $config->db->toArray () );
Zend_Db_Table::setDefaultAdapter ( $db );

?>

config.ini:

[producao]
db.adapter=PDO_MYSQL
db.hostname=localhost //nesse servidor de hospedagem usa localhost mesmo.
db.username=nome do usuario
db.password=senha
db.dbname=nomedo banco
db.extension=pdo_mysql.so //essa linha eu coloquei para ver se resolvia mas não deu certo
billyjoe
Leitor
 
Mensagens: 3
Data de registro: Sáb Fev 27, 2010 4:02 pm

Re: Problema com Com Zend Controller

Mensagempor TulioBraga » Dom Fev 28, 2010 7:26 pm

O problema é que o PDO Extension e/ou Pdo Mysql Extension do PHP não estão habilitados. Para resolver o problema é necessário habilitá-los no php.ini. Procure por " extension=php_pdo_mysql.dll " no php.ini e descomente (remova o ';'). Para as alterações surtirem efeito talvez seja necessário restartar o servidor.
Avatar de usuário
TulioBraga
Participante
 
Mensagens: 97
Data de registro: Sex Mar 06, 2009 12:00 am
Localização: Belo Horizonte

Re: Problema com Com Zend Controller

Mensagempor billyjoe » Seg Mar 01, 2010 11:20 am

Como não deu certo, tentei resolver esse problema com o pessoal do servidor de hospedagem. Mas eles disseram:
Referente a utilização do PDO, nossos servidores tem essa função desabilitada. (e não tem como habilitar de forma alguma, é regra da empresa)

Vou ter mesmo que procurar outro hospedeiro ou existe outra solução?
billyjoe
Leitor
 
Mensagens: 3
Data de registro: Sáb Fev 27, 2010 4:02 pm


Retornar para Model-View-Controller (MVC)

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 0 visitantes