Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > MVC
MVC Forum de support sur le développement d'applications de type modèle-vue-contrôleur avec Zend Framework ainsi que vos questions sur les plugins, les helpers etc. Avant de poster -> Cours MVC, FAQ ZF Controller
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/02/2007, 18h50   #1
Invité régulier
 
Inscription : juillet 2005
Messages : 18
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 18
Points : 9
Points : 9
Par défaut [0.8] Page blanche

Bonjour à tous. Je suis en test présentement du ZF histoire de voir si je vais l'utiliser de manière sérieuse dans le futur (j'avoue que ce framework semble plus que prometteur !) sauf que présentement j'avoue être réellement arrêté sur le modèle MVC qui ne semble pas du tout fonctionner.

J'ai regardé le code du sujet un peu plus bas sur la page blanche cependant ça ne semble pas fonctionner.

ma structure ressemble à ça :

/application
--/controllers
----/indexController.php
--/views
--/models
index.php
.htaccess
zend.php
/Zend

le code du index.php:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
# base class load!
require 'Zend.php';
$dir = dirname(__FILE__) . DIRECTORY_SEPARATOR;
 
try {
#require_once 'Zend/Controller/Front.php';
Zend::loadClass('Zend_Controller_Front');
$controller = Zend_Controller_Front::getInstance();
$controller->setControllerDirectory($dir.'application/controllers');
$controller->throwExceptions(true);
$controller->dispatch();
 
} catch (exception $e) {
	print_r($e);
}
?>
le code de indexController:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php 
// IndexController.php 
Zend::loadClass('Zend_Controller_Action');   
 
class IndexController extends Zend_Controller_Action 
{  
 
	public function __construct()
	{
		echo 'HELLO WORLD!';
		echo '<pre>';
		print_r($this);
		echo '</pre>';
	}
 
	public function init()
	{
		echo 'indexController::init();';
	}
 
	public function __call($m, $p)
	{
		echo 'indexController::__call()';
		print_r($m);
		print_r($p);
	}
 
	public function barAction()
	{
		echo 'indexController::barAction()';
	}
 
	public function indexAction()  
	{  
		echo 'IndexController::indexAction()'; 
	}  
 
	public function noRouteAction()  
	{  
		echo 'No route Action'; 
	} 
} 
?>
Le problème es que je n'ai presque aucun output !

Si je vais sur http://rickypoo.net/ZendExperiments/index/bar

j'ai ça comme output:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
HELLO WORLD!
 
IndexController Object
(
    [_invokeArgs:protected] => Array
        (
        )
 
    [_frontController:protected] => 
    [_redirectCode:protected] => 302
    [_redirectExit:protected] => 1
    [_redirectPrependBase:protected] => 1
    [_request:protected] => 
    [_response:protected] => 
)
Bref ... pas très concluant :p
Reveur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2007, 19h01   #2
Membre éprouvé
 
Avatar de goodpz
 
Inscription : février 2007
Messages : 475
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 475
Points : 474
Points : 474
Si tu définies ton propre constructeur dans ton action controller, il ne faut pas oublier d'appeler le constructeur de la classe parent (ici Zend_Controller_Action) avec les bons paramètres (Zend_Controller_Request_Abstract, Zend_Controller_Response_Abstract .... reporte toi à l'api)
goodpz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/02/2007, 19h29   #3
Invité régulier
 
Inscription : juillet 2005
Messages : 18
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 18
Points : 9
Points : 9
En effet c'était tellement simple que je n'y ai pas pensé. Bref question légèrement stupide j'admets

Enfin bon ça fait parti du processus d'apprentissage j'imagine
Reveur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2007, 17h52   #4
Rédacteur
 
Avatar de doctorrock
 
Homme Julien Pauli
Architecte de système d'information
Inscription : mai 2006
Messages : 597
Détails du profil
Informations personnelles :
Nom : Homme Julien Pauli
Âge : 29
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Architecte de système d'information
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : mai 2006
Messages : 597
Points : 5 015
Points : 5 015
C'est vrai que quand on est pas habitué, on a tendance à oublier l'appel au constructeur parent, et à se manger le cerveau après à la petite cuillière

Mais c'est une des raisons pour lesquelles on nous fournit souvent des méthodes d'initialisation ( init() ici ), qui sont apellées en dernier dans les constructeurs; en théorie, on a pas besoin de recréer un constructeur, sauf en cas d'héritage visant un changement dans la logique de fonctionnement par défaut ^^
__________________
.: Expert contributeur certifié PHP/ZF :.
Mes articles - Twitter - GitHub
doctorrock est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h41.


 
 
 
 
Partenaires

Hébergement Web