Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 29-06-2009 12:25:07

riky'
Membre
Date d'inscription: 25-06-2009
Messages: 12

[RESOLU][ZF 1.8] Problèmes d'url controller-action

Bonjour,

Je débute avec ZF et j'ai essayé de créer mon propre controlleur (et donc la vue qui va avec) et mes propres actions mais je n'arrive pas à y accéder via l'url.

Le chemin où se trouve mon projet est :

Code:

C:\program files\xampp\htdocs\test\user

J'ai créé mon controlleur via l'invite de commande windows :

Code:

zf create controller user

ce qui me fait bien un controlleur nommé userControlleur dans application/controlleurs ainsi qu'une vue dans application/view/scripts/user/index.phtml

J'ai créer la méthode userAction et donc lorsque j'essaye de la lancer via l'url suivante, ça plante :

Code:

http://localhost/test/user/public/user/user

Voici le message d'erreur :

Code:

Exception information:

Message: Invalid controller specified (test)
Stack trace:

#0 C:\Program Files\xampp\ZendFramework\library\Zend\Controller\Front.php(945): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#1 C:\Program Files\xampp\htdocs\Test\user\public\index.php(21): Zend_Controller_Front->dispatch()
#2 {main} 
  

Request Parameters:

array(4) {
  ["controller"]=>
  string(10) "test"
  ["action"]=>
  string(4) "User"
  ["public"]=>
  string(4) "user"
  ["module"]=>
  string(7) "default"
}

Il a l'air de chercher le controlleur directement après le http://localhost alors que c'est toujours le chemin où pointe mon appli...
Si dans mon url je supprime le "/public" il me dit que le chemin n'existe pas.

Dernière modification par riky' (29-06-2009 16:53:43)

Hors ligne

 

#2 29-06-2009 12:48:32

Vincent
Administrateur
Date d'inscription: 19-09-2008
Messages: 510

Re: [RESOLU][ZF 1.8] Problèmes d'url controller-action

Effectivement il cherche l'adresse sur localhost car c'est l'adresse de ton serveur par défaut.
Par défaut, cela correspond à ton répertoire C:\program files\xampp\htdocs\
Ce répertoire, dans une application Zend Framework correspond au répertoire public, le seul visible de l'extérieur.

Tu peux bien sûr utiliser un autre répertoire (ex: C:\program files\xampp\htdocs\ZF_app1\public\ ) et héberger plusieurs applications ZF sur ton serveur avec des virtualhosts.

Après, pour le fonctionnement des URLs dans le Zend Framework tu peux aller voir ce lien :
http://www.grummfy.be/blog/index.php?tag/ZF
Par défaut tu auras donc http://localhost/ton_controller/ton_action


http://localhost/test/user/public/user/user

Cette URL ne peut pas marcher. Si ton serveur est bien configuré, http://localhost doit pointer sur c:\%ton_application%\public\

Relis bien la documentation officielle wink


aka miboo

Hors ligne

 

#3 29-06-2009 14:46:45

riky'
Membre
Date d'inscription: 25-06-2009
Messages: 12

Re: [RESOLU][ZF 1.8] Problèmes d'url controller-action

Merci pour la réponse.

J'ai pu effectivement réussir à faire quelque chose en utilisants des virtualhosts.
Par contre j'ai toujours une erreur lorsque je veux accéder à une action autre que indexAction :

Code:

 Message: script 'user/user.phtml' not found in path (E:\Xampp\htdocs\TestPlugin\user\application\views\scripts\)
Stack trace:

#0 E:\Xampp\ZendFramework\library\Zend\View\Abstract.php(828): Zend_View_Abstract->_script('user/user.phtml')
#1 E:\Xampp\ZendFramework\library\Zend\Controller\Action\Helper\ViewRenderer.php(902): Zend_View_Abstract->render('user/user.phtml')
#2 E:\Xampp\ZendFramework\library\Zend\Controller\Action\Helper\ViewRenderer.php(923): Zend_Controller_Action_Helper_ViewRenderer->renderScript('user/user.phtml', NULL)
#3 E:\Xampp\ZendFramework\library\Zend\Controller\Action\Helper\ViewRenderer.php(962): Zend_Controller_Action_Helper_ViewRenderer->render()
#4 E:\Xampp\ZendFramework\library\Zend\Controller\Action\HelperBroker.php(276): Zend_Controller_Action_Helper_ViewRenderer->postDispatch()
#5 E:\Xampp\ZendFramework\library\Zend\Controller\Action.php(522): Zend_Controller_Action_HelperBroker->notifyPostDispatch()
#6 E:\Xampp\ZendFramework\library\Zend\Controller\Dispatcher\Standard.php(288): Zend_Controller_Action->dispatch('userAction')
#7 E:\Xampp\ZendFramework\library\Zend\Controller\Front.php(945): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#8 E:\Xampp\htdocs\TestPlugin\user\public\index.php(21): Zend_Controller_Front->dispatch()
#9 {main} 
  

Request Parameters:

array(3) {
  ["controller"]=>
  string(4) "user"
  ["action"]=>
  string(4) "user"
  ["module"]=>
  string(7) "default"
}

Le fichier user.phtml existe pourtant bien dans application/view/scripts/user/

Sinon je n'arrive pas à utiliser les virtualHosts pour un serveur distant.
Je me connecte dessus en faisant : http://portail
et j'arrive sur la page home de xampp. En faisant http://portail/test/user/public j'arrive à mon appli avec le controller indexController et l'action indexAction. J'ai essayé de changer le httpd.conf d'apache et le host de windows mais sans réussite.

Hors ligne

 

#4 29-06-2009 14:59:40

Vincent
Administrateur
Date d'inscription: 19-09-2008
Messages: 510

Re: [RESOLU][ZF 1.8] Problèmes d'url controller-action

Si les paramètres de la requête sont :

array(3) {
  ["controller"]=>
  string(4) "user"
  ["action"]=>
  string(4) "user"
  ["module"]=>
  string(7) "default"
}

Tu dois avoir dans le répertoire de ton application mvc, une architecture qui ressemble à :

application
     controllers
          indexController.php
          userController.php
     
    views
            scripts 
                 index
                     index.phtml
                 user
                      user.phtml (la vue qui correspond à l'action "user" du controller "user")

A l'intérieur du controller user (userController.php) tu dois avoir une action "user"

class userController extends Zend_Controller_Action
{
   
    public function userAction()
    {
         // traitements
     ....


aka miboo

Hors ligne

 

#5 29-06-2009 15:10:05

riky'
Membre
Date d'inscription: 25-06-2009
Messages: 12

Re: [RESOLU][ZF 1.8] Problèmes d'url controller-action

Oui j'ai bien l'action, d'où mon étonnement ...

EDIT : Euh en fait non j'avais pas bien vu ^^
Merci bien pour l'aide wink

Dernière modification par riky' (29-06-2009 16:53:07)

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages