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 28/07/2007, 22h18   #1
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
Par défaut Mise en place de l'URL Rewriting

Bonjour a tous,

j'utilise également mamp sous mac os X 10.4
moi je n'ai pas d'erreur 404 mais j'ai une grosse page blanche, il ne m'affiche jamais les erreurs je ne sais pas pourquoi. php.ini est correct je pense j'ai tout mis en E_ALL

Bref sinon je pense que c'est l'histoire du mode rewrite pour apache et la je patine je ne sais vraiment pas quoi faire.

En outre la structure des fichiers sous mac diffère un peu es ce que cela devrait changer le fichier index.php ?
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/07/2007, 01h16   #2
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
As-tu vérifié que tu utilises bien le php.ini que tu penses ? Il a tendance à jouer au fourbe
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2007, 18h50   #3
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
vivi j'ai vérifié,
j'ai effectivement 2 fichiers un pour php4 et l'autre pour php5.

Et je pense qu'ils sont correct.

Je ne sais vraiment pas comment paramétré mon index.php pour mac
c'est embétant ce framework avait l'air parfait pour mon petit projet, c'est vraiment une logique MVC que je recherchais.

En attendant des idées je code tout en php5 pas orienté objet pour m'entrainer un peu

merci pour votre aide,
si vous avez d'autre iées ou la même config que moi, n'hésitez pas à me faire signe
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2007, 00h22   #4
Membre expérimenté
 
Avatar de hansaplast
 
Inscription : septembre 2005
Messages : 925
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : septembre 2005
Messages : 925
Points : 562
Points : 562
pour verifier si ton index.php est bien appelé essaie, a la ligne 1 (apres le <?php) un :
si tu voit apparaitre :
Citation:
ouf ca rassure
c'est que index.php est bien appelé...

sinon, une choses a verifier :
1/ que tu redirige bien toutes les requetes (sauf css, gif...) vers index.php5.
=> pour cela, verifie que ton apache autorise les .htacces a modifier les config (allowOveride all) ou que tu redirige directement dans ton httpd.conf

pour la redirection, tu peut, dans un premier temps faire :
Code :
1
2
RewriteEngine on
RewriteRule .* index.php
tu optimisera ensuite afin de ne pas rediriger les fichiers CSS et autres...

enfin, verifie dans ton httpd.conf que tu as activé le mod rewrite.
__________________
Vous un sur Grenoble? on est fait pour tout du moins si vous mon CV
hansaplast est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2007, 15h30   #5
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
pour moi là il est 9h30 je regarde tout ca ce soir en rentrant
en tout cas j'ai hate que ce truc marche pour me lancer corps et ames dedans
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2007, 23h50   #6
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
bon alors j'ai bien vérifié tout cela :
dans le php.ini (celui dans le dossier php5) et oui j'ai bien activé php 5 dans MAMP j'ai fais des tests pour etre sur
Dans le doute voici la section sur les erreurs dans mon fichier
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
; error_reporting is a bit-field.  Or each number up to get desired error
; reporting level
; E_ALL             - All errors and warnings
; E_ERROR           - fatal run-time errors
; E_WARNING         - run-time warnings (non-fatal errors)
; E_PARSE           - compile-time parse errors
; E_NOTICE          - run-time notices (these are warnings which often result
;                     from a bug in your code, but it's possible that it was
;                     intentional (e.g., using an uninitialized variable and
;                     relying on the fact it's automatically initialized to an
;                     empty string)
; E_CORE_ERROR      - fatal errors that occur during PHP's initial startup
; E_CORE_WARNING    - warnings (non-fatal errors) that occur during PHP's
;                     initial startup
; E_COMPILE_ERROR   - fatal compile-time errors
; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
; E_USER_ERROR      - user-generated error message
; E_USER_WARNING    - user-generated warning message
; E_USER_NOTICE     - user-generated notice message
;
; Examples:
;
;   - Show all errors, except for notices
;
;error_reporting = E_ALL & ~E_NOTICE
;
;   - Show only errors
;
;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
;
;   - Show all errors except for notices
;
error_reporting  =  E_ALL
 
; Print out errors (as a part of the output).  For production web sites,
; you're strongly encouraged to turn this feature off, and use error logging
; instead (see below).  Keeping display_errors enabled on a production web site
; may reveal security information to end users, such as file paths on your Web
; server, your database schema or other information.
display_errors = Off
 
; Even when display_errors is on, errors that occur during PHP's startup
; sequence are not displayed.  It's strongly recommended to keep
; display_startup_errors off, except for when debugging.
display_startup_errors = Off
 
; Log errors into a log file (server-specific log, stderr, or error_log (below))
; As stated above, you're strongly advised to use error logging in place of
; error displaying on production web sites.
log_errors = On
 
; Set maximum length of log_errors. In error_log information about the source is
; added. The default is 1024 and 0 allows to not apply any maximum length at all.
log_errors_max_len = 1024
 
; Do not log repeated messages. Repeated errors must occur in same file on same
; line until ignore_repeated_source is set true.
ignore_repeated_errors = Off
 
; Ignore source of message when ignoring repeated messages. When this setting 
; is On you will not log errors with repeated messages from different files or
; sourcelines.
ignore_repeated_source = Off
 
; If this parameter is set to Off, then memory leaks will not be shown (on
; stdout or in the log). This has only effect in a debug compile, and if 
; error reporting includes E_WARNING in the allowed list
report_memleaks = On
 
; Store the last error/warning message in $php_errormsg (boolean).
track_errors = Off
 
; Disable the inclusion of HTML tags in error messages.
;html_errors = Off
 
; If html_errors is set On PHP produces clickable error messages that direct 
; to a page describing the error or function causing the error in detail.
; You can download a copy of the PHP manual from http://www.php.net/docs.php 
; and change docref_root to the base URL of your local copy including the
; leading '/'. You must also specify the file extension being used including 
; the dot.
;docref_root = "/phpmanual/"
;docref_ext = .html
 
; String to output before an error message.
;error_prepend_string = "<font color=ff0000>"
 
; String to output after an error message.
;error_append_string = "</font>"
 
; Log errors to specified file.
error_log = "/Applications/MAMP/logs/php_error.log"
 
; Log errors to syslog (Event Log on NT, not valid in Windows 95).
;error_log = syslog
Apres voici mon httpd.conf je suis pas très bon je comprend pas tout je met plusieurs bout :
Code :
1
2
3
4
5
6
7
8
9
10
11
# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories). 
#
# First, we configure the "default" to be a very restrictive set of 
# features.  
#
<Directory />
    Options Indexes FollowSymLinks
    AllowOverride All
</Directory>
Code :
1
2
3
4
5
6
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
    AllowOverride All
Bon voila ca s'était pour les config server, maintenant dans le scripts en lui même (rappel j'utilise un mac os X 10.4 avec mamp)
tout d'abord voila ma structure de dossier
Citation:
zf_tuto/
---WEBAPP_DIR/
------.htaccess
------index.php
------PHP-INF/
---------ctrl/
------------IndexController.php
---------views/
------------filters/
------------helpers/
------------scripts/
---------------index/
------------------index.phtml
Remarque zf_tuto se trouve dans un dossier site et MAMP pointe vers site dans c'est mon dossier racine pour le server.

Ensuite et c'est là que ca ce complique. Je ne connais pas tellement l'architecture mac et son système de fichier (comme unix il me semble) mais en tout cas voila mon fichier index.php (celui dans WEBAPP_DIR)
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
 
die('ouf ca rassure')
 
// mettre vos constantes ici...
define("WEBAPP_DIR","./Users/Nicolas/Sites/zf_tuto/");
define("MODEL_DIR",WEBAPP_DIR."/PHP-INF/");
define("ROOT_URL","http://localhost:8888/zf_tuto/");
define("BASE_URL","/zf_tuto/");
define("ZEND_FRAMEWORK_DIR","./Users/Nicolas/Sites/phplib/Zend_Framework/library/");
 
define("DB_SERVER","localhost");
define("DB_PORT","8888");
define("DB_NAME","CDP_VI");
define("DB_USER","root");
define("DB_PASSWORD","root");
define("DB_TYPE","PDO_MYSQL");
 
set_include_path(
  ".".PATH_SEPARATOR.
  MODEL_DIR.PATH_SEPARATOR.
  ZEND_FRAMEWORK_DIR.PATH_SEPARATOR.
  get_include_path()
);
 
require_once 'Zend/Loader.php';
 
// Registry init
Zend_Loader::loadClass("Zend_Registry");
 
// Controller init
Zend_Loader::loadClass('Zend_Controller_Front');
Zend_Loader::loadClass('Zend_Controller_Router_Rewrite');
$controller = Zend_Controller_Front::getInstance();
 
$router = new Zend_Controller_Router_Rewrite();
 
$cmtRoute = new Zend_Controller_Router_Route(
    "comment/:action/:comment",
    array(  "comment"=>null,
            "controller"=>"comment",
            "action"=>"display"
    )
);
$router->addRoute("comment",$cmtRoute);
$controller->setBaseUrl(BASE_URL);
 
$controller->setRouter($router);
$controller->setControllerDirectory('PHP-INF/ctrl');
$controller->throwExceptions(true);
 
// init viewRenderer
$view = new Zend_View();
$viewRenderer = Zend_Controller_Action_HelperBroker::
    getStaticHelper('viewRenderer');
$viewRenderer->setView($view)
             ->setViewSuffix('phtml');
 
// call dispatcher
$controller->dispatch();
?>
ca marche pas
Au début j'avais commencé le tuto de développez.com mais je n'y était pas arrivé non plus donc du coup j'ai suivi celui de kitpages mais bon ce n'est pas très concluant non plus. Je pense que mon problème se situe dans les "define" plus je le regarde plus je galère bref si quelqu'un peu m'aider un peu...

A tout hazard voici mon IndexController.php
Code :
1
2
3
4
5
6
7
8
9
<?php
require_once 'Zend/Controller/Action.php';
 
class IndexController extends Zend_Controller_Action {
    public function indexAction() {
        $this->view->testMessage = "Mon message de test";
    }
}
?>
et index.phtml est juste un fichier tout bête.

merci de votre aide
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2007, 02h24   #7
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Es-tu certain que ce php.ini soit pour php5 ? Il me semble qu'il te manque un niveau d'erreur : E_STRICT, que je te recommande d'ailleurs d'activer pendant le développement. Voici la portion de commentaires dans mon php.ini (PHP5) :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
; E_ALL             - All errors and warnings
; E_ERROR           - fatal run-time errors
; E_WARNING         - run-time warnings (non-fatal errors)
; E_PARSE           - compile-time parse errors
; E_NOTICE          - run-time notices (these are warnings which often result
;                     from a bug in your code, but it's possible that it was
;                     intentional (e.g., using an uninitialized variable and
;                     relying on the fact it's automatically initialized to an
;                     empty string)
; E_STRICT          - run-time notices, enable to have PHP suggest changes
;                     to your code which will ensure the best interoperability
;                     and forward compatability of your code
; E_CORE_ERROR      - fatal errors that occur during PHP's initial startup
; E_CORE_WARNING    - warnings (non-fatal errors) that occur during PHP's
;                     initial startup
; E_COMPILE_ERROR   - fatal compile-time errors
; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
; E_USER_ERROR      - user-generated error message
; E_USER_WARNING    - user-generated warning message
; E_USER_NOTICE     - user-generated notice message
Voici comment activer le mode strict :
Code :
error_reporting = E_ALL | E_STRICT
Vérifie aussi que mod_rewrite est activé dans httpd.conf (sans le # au début de la ligne) :
Code :
LoadModule rewrite_module modules/mod_rewrite.so
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2007, 07h49   #8
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
même si mon niveau d'erreur n'est pas parfais ce n'est pas la cause du dysfonctionnement

je ne sais toujours pas pourquoi mon framework ne marche pas.

EDIT : je viens de regarder le php.ini et effectivement il n'est pas pareil c'est bizare, je viens de le corriger et je regarde les effets de suite...

Il y a quand même un truc dont je suis certain c'est que le .htaccess fonctionne puisque je n'est pas l'affichage standard qui me propose de naviguer dans un dossier quand on est dans une page web.
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2007, 08h10   #9
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
Et la la réponse de mon cher modérateur :
oui mais on pourra savoir quel est le type d'erreur et ou il faut chercher...

Donc chose prévu chose du, oui je sais c'est nul comme expression mais il est tard et je suis fatigué...

voila l'erreur marqué
Citation:
Parse error: syntax error, unexpected T_STRING in /Users/Nicolas/Sites/zf_tuto/WEBAPP_DIR/index.php on line 9
et la ligne 9 c'est ca :
Code :
define("WEBAPP_DIR","./Users/Nicolas/Sites/zf_tuto/");
C'est donc bien dans les define qu'est le problème mais je ne sais pas comment le résoudre...
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2007, 08h15   #10
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
[QUOTE=hansaplast]pour verifier si ton index.php est bien appelé essaie, a la ligne 1 (apres le <?php) un :
si tu voit apparaitre :
c'est que index.php est bien appelé...

Hansaplast je vais te tuer, t'y croix ca, je fais un copier coller de ton truc et je fais même pas gaffe et comme un gros boulet j'ai pas vu qu'il n'y avait pas de ; a la fin de ta ligne, du coup ca fait une journée que je cherche pour rien.

Enfin pour rien j'exagère plus je cherche plus je comprend les configuration server, et la logique du mvc.
Bref j'ai bien le ouf ca rassure maintenant mais c'est tout
j'ai rien d'autre alors que normalement il doit m'afficher la page de vue par defaut ...

bref j'avance mais ca ne marche toujours pas
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2007, 09h26   #11
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
Bon alors ca avance, j'ai remarqué que la library avait un soucis...
J'avais un uncaught error je sais plus quoi.
Du coup il doit y avoir une petite ligne caché dans le httpd.conf qui dit que toutes les library sont planqué dans mon dossier mamp dans un obscur sous dossier.
Bref j'ai copié collé le framework dans l'endroit ou c'était indiqué dans l'erreur. Et là j'ai eu une autre erreur que voici.
Donc j'imagine que maintenant ma page pointe vers le bon framework puisque mes affichages d'erreurs ont évolué.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' 
with message 'Invalid controller specified (o)' in 
/Applications/MAMP/bin/php5/lib/php/Zend/Controller/Dispatcher/Standard.php:193 
Stack trace: #0 
/Applications/MAMP/bin/php5/lib/php/Zend/Controller/Front.php(911): 
Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), 
Object(Zend_Controller_Response_Http)) #1 
/Users/Nicolas/Sites/zf_tuto/WEBAPP_DIR/index.php(63): 
Zend_Controller_Front->dispatch() #2 {main} thrown in 
/Applications/MAMP/bin/php5/lib/php/Zend/Controller/Dispatcher/Standard.php 
on line 193
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2007, 12h45   #12
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Il y a un passage du tutoriel de Rob Allen qui lance une exception c'est : normal, relis le tutoriel pour + d'informations.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/08/2007, 03h12   #13
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
le truc c'est que je fais pas le tuto de rob allen, je fais celui de kit page.

pour rob allen j'ai le message internal error machin, ya rien qui marche...
je dois pas etre trop doué

en tout cas j'ai pas mal avancé et si tavais une explication pour ce message d'erreur...
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/08/2007, 07h51   #14
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Si c'est une erreur interne, as-tu vérifié que c'est bien PHP5 qui se lance ? Il te suffit de mettre ceci dans un script :
Internal error pour un script sensé fonctionner, est une erreur typique d'un script écrit en PHP5 mais exécuté en PHP4...
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 01h32   #15
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
bon alors ca avance, ca avance
voici mon code...
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
 
// die('ouf ca rassure');
 
// mettre vos constantes ici...
 
echo PHP_VERSION;
 
define("WEBAPP_DIR","/Users/Nicolas/Sites/zf_tuto/");
define("MODEL_DIR",WEBAPP_DIR."/PHP-INF/");
define("ROOT_URL","http://localhost:8888/zf_tuto/");
define("BASE_URL","/zf_tuto/");
define("ZEND_FRAMEWORK_DIR","/Users/Nicolas/Sites/phplib/Zend_Framework/library/");
 
define("DB_SERVER","localhost");
define("DB_PORT","8888");
define("DB_NAME","CDP_VI");
define("DB_USER","root");
define("DB_PASSWORD","root");
define("DB_TYPE","PDO_MYSQL");
 
set_include_path(
  ":".PATH_SEPARATOR.
  MODEL_DIR.PATH_SEPARATOR.
  ZEND_FRAMEWORK_DIR.PATH_SEPARATOR.
  get_include_path()
);
 
require_once 'Zend/Loader.php';
 
// Registry init
Zend_Loader::loadClass("Zend_Registry");
 
// Controller init
Zend_Loader::loadClass('Zend_Controller_Front');
Zend_Loader::loadClass('Zend_Controller_Router_Rewrite');
$controller = Zend_Controller_Front::getInstance();
 
$router = new Zend_Controller_Router_Rewrite();
 
$cmtRoute = new Zend_Controller_Router_Route(
    "comment/:action/:comment",
    array(  "comment"=>null,
            "controller"=>"comment",
            "action"=>"display"
    )
);
$router->addRoute("comment",$cmtRoute);
$controller->setBaseUrl(BASE_URL);
 
$controller->setRouter($router);
$controller->setControllerDirectory('PHP-INF/ctrl');
$controller->throwExceptions(true);
 
 init viewRenderer
 $view = new Zend_View();
 $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
    getStaticHelper('viewRenderer');
  $viewRenderer->setView($view)
             ->setViewSuffix('phtml');
 
// call dispatcher
$controller->dispatch();
?>
Et voici mon erreur...
Citation:
Parse error: syntax error, unexpected T_STRING in /Users/Nicolas/Sites/zf_tuto/WEBAPP_DIR/index.php on line 57
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 01h48   #16
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Regarde bien ta ligne 55.
À l'avenir, merci d'indiquer de quelle ligne tu parles.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 06h50   #17
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
Je viens de faire la correction, no comment, c'est le cas de le dire...

nouveau message d'erreur... (rappel je fais le tuto de kitpages)... mici
Citation:
Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (WEBAPP_DIR)' in /Applications/MAMP/bin/php5/lib/php/Zend/Controller/Dispatcher/Standard.php:193 Stack trace: #0 /Applications/MAMP/bin/php5/lib/php/Zend/Controller/Front.php(911): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 /Users/Nicolas/Sites/zf_tuto/WEBAPP_DIR/index.php(65): Zend_Controller_Front->dispatch() #2 {main} thrown in /Applications/MAMP/bin/php5/lib/php/Zend/Controller/Dispatcher/Standard.php on line 193
Et pis mon petit fichier modifié ou doit y avoir plein de soucis dans la définition des define vu que je suis sous mac os x avec mamp...

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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
 
// die('ouf ca rassure');
 
// mettre vos constantes ici...
 
echo PHP_VERSION;
 
define("WEBAPP_DIR","./Users/Nicolas/Sites/zf_tuto/");
define("MODEL_DIR",WEBAPP_DIR."/PHP-INF/");
define("ROOT_URL","http://localhost:8888/zf_tuto/");
define("BASE_URL","/zf_tuto/");
define("ZEND_FRAMEWORK_DIR","/Users/Nicolas/Sites/phplib/Zend_Framework/library/");
 
define("DB_SERVER","localhost");
define("DB_PORT","8888");
define("DB_NAME","CDP_VI");
define("DB_USER","root");
define("DB_PASSWORD","root");
define("DB_TYPE","PDO_MYSQL");
 
set_include_path(
  ":".PATH_SEPARATOR.
  MODEL_DIR.PATH_SEPARATOR.
  ZEND_FRAMEWORK_DIR.PATH_SEPARATOR.
  get_include_path()
);
 
require_once 'Zend/Loader.php';
 
// Registry init
Zend_Loader::loadClass("Zend_Registry");
 
// Controller init
Zend_Loader::loadClass('Zend_Controller_Front');
Zend_Loader::loadClass('Zend_Controller_Router_Rewrite');
$controller = Zend_Controller_Front::getInstance();
 
$router = new Zend_Controller_Router_Rewrite();
 
$cmtRoute = new Zend_Controller_Router_Route(
    "comment/:action/:comment",
    array(  "comment"=>null,
            "controller"=>"comment",
            "action"=>"display"
    )
);
$router->addRoute("comment",$cmtRoute);
$controller->setBaseUrl(BASE_URL);
 
$controller->setRouter($router);
$controller->setControllerDirectory('PHP-INF/ctrl/');
$controller->throwExceptions(true);
 
 // init viewRenderer
 $view = new Zend_View();
 $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
 
 $viewRenderer->setView($view)
              ->setViewSuffix('phtml');
 
// call dispatcher
$controller->dispatch();
?>
voili voilou
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 09h03   #18
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Qu'est-ce que c'est que ce fichier ?
Citation:
/Users/Nicolas/Sites/zf_tuto/WEBAPP_DIR/index.php
Pourquoi as-tu mis WEBAPP_DIR ici ?
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 19h00   #19
Membre du Club
 
Inscription : mars 2005
Messages : 199
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 199
Points : 56
Points : 56
Citation:
La racine de votre site est imposée dans votre fichier index.php (le WEBAPP_DIR). Pour l'instant il n'y a rien d'autre dedans que le fichier index.php.

créez l'arborescence suivante :

WEBAPP_DIR
---index.php (fichier)
---PHP-INF (répertoire)
------views (répertoire)
---------scripts (répertoire)
------------index (répertoire)
---------filters (répertoire inutilisé)
---------helpers (répertoire inutilisé)
------ctrl (répertoire)
C'est le tuto moi, je suis.
J'ai tout mis dans zf-tuto qui est mon répertoire de test mais c'est tout.
C'est un problème ?
louroulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 19h47   #20
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
WEBAPP_DIR est la constante qui défini ton répertoire de travail c'est à dire "zf_tuto" dans ton cas
donc normalement le fichier "index.php" ainsi que le répertoire "PHP-INF" doivent se trouver dans "zf_tuto"
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h39.


 
 
 
 
Partenaires

Hébergement Web