Foros del Web » Programando para Internet » PHP » Zend »

Problema con controlador en Zend

Estas en el tema de Problema con controlador en Zend en el foro de Zend en Foros del Web. Hola soy nuevo en la programacion de Zend, llevo una semana estudiando y creo que entiendo el funcionamiento del FrameWork. Una vez entendido me puse ...
  #1 (permalink)  
Antiguo 25/02/2011, 07:56
 
Fecha de Ingreso: marzo-2006
Mensajes: 230
Antigüedad: 18 años
Puntos: 2
Problema con controlador en Zend

Hola soy nuevo en la programacion de Zend, llevo una semana estudiando y creo que entiendo el funcionamiento del FrameWork. Una vez entendido me puse a trastear he intente hacer un index que validase un usuario y me redirigiese a una pantalla. Para ello cree el proyecto sin ningun tipo de problema, el proyecto me creo los dos controladores por defecto(error y index) en el index realice un formulario para validarse contra Base de datos y funciona perfectamente. El problema es que para la pagina principal cree un controlador Principal para mostrar la pagina principal y no me funciona, es decir entro en http://localhost/public/principal y me dice que no existe. Este es el codigo del Bootstrap y el controlador(las vistas si que me las crea y en controller la carpeta Principal esta creada con su PrincipalController.php).

Código PHP:
Ver original
  1. bootstrap.php
  2.  
  3. class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
  4. {
  5.     protected function _initAutoload()
  6.         {
  7.               $moduleLoader = new Zend_Application_Module_Autoloader(array(
  8.                    'namespace' => '',
  9.                    'basePath' => APPLICATION_PATH));
  10.  
  11.               return $moduleLoader;
  12.         }
  13.    
  14.    
  15.     function _initViewHelpers()
  16.     {
  17.        $this->bootstrap('layout');
  18.        $layout = $this->getResource('layout');
  19.        $view = $layout->getView();
  20.        $view->doctype('XHTML1_STRICT');
  21.        
  22.        $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=utf-8');
  23.        $view->headTitle()->setSeparator(' - ');
  24.        $view->headTitle('');
  25.        $view->headLink()->appendStylesheet('../application/css/estilos.css');
  26.     }
  27.    
  28. }

y este el del controlado Principal

Código PHP:
Ver original
  1. PrincipalController.php
  2.  
  3. <?php
  4.  
  5. class principalController extends Zend_Controller_Action
  6. {
  7.  
  8.     public function init()
  9.     {
  10.         $this->view->headTitle('Principal');  
  11.         $this->view->headTitle()->setSeparator(' / ');  
  12.     }
  13.  
  14.     public function indexAction()
  15.     {
  16.          
  17.     }
  18.  
  19.  
  20. }
  #2 (permalink)  
Antiguo 25/02/2011, 08:34
 
Fecha de Ingreso: octubre-2009
Mensajes: 240
Antigüedad: 14 años, 6 meses
Puntos: 6
Respuesta: Problema con controlador en Zend

Hola, lo que tenes que mostrar en pantalla son los "actions", no los controladores
Código PHP:
Ver original
  1. <?php
  2.  
  3. class principalController extends Zend_Controller_Action
  4. {
  5.  
  6.     public function init()
  7.     {
  8.         $this->view->headTitle('Principal');  
  9.         $this->view->headTitle()->setSeparator(' / ');  
  10.     }
  11.  
  12.     public function indexAction()
  13.     {
  14.          
  15.     }
  16.  
  17.     public function otroAction()
  18.     {
  19.          
  20.     }
  21.  
  22.  
  23. }
... y sus respectivas vistas:
index.phtml
otro.phtml

Además para trabajar con proyectos ZF es altamente recomendable crear un VirtualHost, sino te vas a hacer un lio.
  #3 (permalink)  
Antiguo 25/02/2011, 08:44
 
Fecha de Ingreso: marzo-2006
Mensajes: 230
Antigüedad: 18 años
Puntos: 2
Respuesta: Problema con controlador en Zend

Si eso ya lo se, por eso tengo creado el action Index, pero no carga nada.

Saludos!
  #4 (permalink)  
Antiguo 25/02/2011, 08:59
 
Fecha de Ingreso: marzo-2006
Mensajes: 230
Antigüedad: 18 años
Puntos: 2
Respuesta: Problema con controlador en Zend

Si pongo http://localhost/public/index.php/Principal me funciona!!
  #5 (permalink)  
Antiguo 25/02/2011, 09:19
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Problema con controlador en Zend

Tienes habilitado el mod_rewrite en tu .htaccess???

Saludos.
  #6 (permalink)  
Antiguo 25/02/2011, 11:03
 
Fecha de Ingreso: marzo-2006
Mensajes: 230
Antigüedad: 18 años
Puntos: 2
Respuesta: Problema con controlador en Zend

Este es mi .htaccess!!

1
2 RewriteEngine On
3 RewriteCond %{REQUEST_FILENAME} -s [OR]
4 RewriteCond %{REQUEST_FILENAME} -l [OR]
5 RewriteCond %{REQUEST_FILENAME} -d
6 RewriteRule ^.*$ - [NC,L]
7 RewriteRule ^.*$ index.php [NC,L]
  #7 (permalink)  
Antiguo 25/02/2011, 12:11
 
Fecha de Ingreso: octubre-2009
Mensajes: 240
Antigüedad: 14 años, 6 meses
Puntos: 6
Respuesta: Problema con controlador en Zend

Tenes activado el mod_rewrite en apache?

Por las dudas:
En el httpd.conf de apache.

En la linea:
#LoadModule rewrite_module modules/mod_rewrite.so (quitá el #)

despues reiniciá apache.
  #8 (permalink)  
Antiguo 25/02/2011, 13:13
 
Fecha de Ingreso: marzo-2006
Mensajes: 230
Antigüedad: 18 años
Puntos: 2
Respuesta: Problema con controlador en Zend

Eso linea no aparece en el apache, tiene una configuracion bastante rara con los modulos cargados en archivos .load y .conf!!!
  #9 (permalink)  
Antiguo 25/02/2011, 14:39
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Problema con controlador en Zend

Revisa la configuración de tu apache, por lo que dices parece que no ejecuta el .htaccess ni tiene habilitado el mod_rewrite.

Saludos.
  #10 (permalink)  
Antiguo 10/10/2011, 18:33
Avatar de erickxls  
Fecha de Ingreso: julio-2009
Ubicación: Lima
Mensajes: 78
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: Problema con controlador en Zend

Perdon por revivir un tema viejo pero tengo el mismo problema creo un nuevo controlador pero cuando quiero acceder a el me sale que el servidor no lo reconoce ya revise que tengo habilitado el mod_rewrite y el virtualhost funciona bien no se a que se deba ademas cuando le agrego actions al indexController me funcionan normal el problema es cuando creo un nuevo controlador
  #11 (permalink)  
Antiguo 11/10/2011, 11:53
Avatar de erickxls  
Fecha de Ingreso: julio-2009
Ubicación: Lima
Mensajes: 78
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: Problema con controlador en Zend

para que a otro le pueda servir la ayuda mi problema era la configuracion del virtualhost funcionaba bien pero me falto ponerle la parte de
Código XML:
Ver original
  1. <Directory "/Library/WebServer/Documents/aulavirtual/public">
  2.         Options Indexes MultiViews FollowSymLinks
  3.         AllowOverride All
  4.         Order allow,deny
  5.         Allow from all
  6.     </Directory>
dentro del VirtualHost tag

Etiquetas: controlador
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 03:19.