Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#26 03-08-2007 14:16:58

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: IndexController - Action introuvable

Avec un éditeur de texte plus évolué tu peux appeler ton fichier .htaccess (tu peux essayer "crimson editor" ou "pspad" par exemple, ils sont gratuits tous les deux).

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#27 03-08-2007 14:39:05

nadia2507
Membre
Date d'inscription: 03-08-2007
Messages: 27

Re: IndexController - Action introuvable

j'ai créer les .htaccess, mais maintenant rien ne marche plus,
mém pa index.
ile me donne l'erreur suivante:
Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (veilletech)' in D:\Program Files\EasyPHP2.0b1\www\veilleTech\library\Zend\Controller\Dispatcher\Standard.php:193 Stack trace: #0 D:\Program Files\EasyPHP 2.0b1\www\veilleTech\library\Zend\Controller\Front.php(911): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 D:\Program Files\EasyPHP 2.0b1\www\veilleTech\index.php(17): Zend_Controller_Front->dispatch() #2 {main} thrown in D:\Program Files\EasyPHP 2.0b1\www\veilleTech\library\Zend\Controller\Dispatcher\Standard.php on line 193

merci d'avance,

Hors ligne

 

#28 03-08-2007 14:46:54

nadia2507
Membre
Date d'inscription: 03-08-2007
Messages: 27

Re: IndexController - Action introuvable

j'ai copier le même controleur que le tuto, et j'ai ajouter les index.phtml

et je vois pas d'où peut venir cette erreur!!

merci

Hors ligne

 

#29 03-08-2007 15:14:00

yannux
Membre
Lieu: Rennes
Date d'inscription: 07-04-2007
Messages: 284
Site web

Re: IndexController - Action introuvable

Montre ton code stp smile


Société : Direct Info Service

Hors ligne

 

#30 03-08-2007 16:03:51

nadia2507
Membre
Date d'inscription: 03-08-2007
Messages: 27

Re: IndexController - Action introuvable

voici mon code:
pour le controleur: IndexController
<?php

class IndexController extends Zend_Controller_Action
{
    function indexAction()
    {
        echo "<p>dans IndexController::indexAction()</p>";
    }

    function ajouterAction()
    {
        echo "<p>dans IndexController::ajouterAction()</p>";
    }

    function modifierAction()
    {
        echo "<p>dans IndexController::modifierAction()</p>";
    }

    function supprimerAction()
    {
        echo "<p>dans IndexController::supprimerAction()</p>";
    }
}

et voici index.php:
<?php
//error_reporting(E_ALL|E_STRICT);
set_include_path('.' . PATH_SEPARATOR . './library'
     . PATH_SEPARATOR . './application/models/'
     . PATH_SEPARATOR . get_include_path());
include "Zend/Loader.php";

Zend_Loader::loadClass('Zend_Controller_Front');

$frontController = Zend_Controller_Front::getInstance();
$frontController->throwExceptions(true);
$frontController->setControllerDirectory('./application/controllers');
$frontController->dispatch();

et le .htaccess:
RewriteEngine on
RewriteRule .* index.php
php_flag magic_quotes_gpc off
php_flag register_globals off

et pour index.phtml et ajouter.phtml ils sont vides

j'ai suivi le tuto à la lettre

merci pour votre aide

Hors ligne

 

#31 03-08-2007 16:52:25

yannux
Membre
Lieu: Rennes
Date d'inscription: 07-04-2007
Messages: 284
Site web

Re: IndexController - Action introuvable

Ah apperrement tu fais ça dans un sous repertoire de la racine web :
D:\Program Files\EasyPHP 2.0b1\www\veilleTech

Il doit y avoir une instruction à rajouter car sinon là tu dois accèder par
http://localhost/veilleTech/
Et donc le ZF cherche un controller veilleTech... 

[strike]Je ne connais pas l'instruction ou la syntaxe pour ce genre d'organisation :s[/strike]

Après une petite recherche google, dans la documentation  :



Si la base de l'URL est détectée de manière inexacte vous pouvez la surcharger avec votre propre chemin de base grâce à la méthode setBaseUrl() soit de la classe de Zend_Controller_Request_Http, soit de la classe de Zend_Controller_Front. La méthode la plus facile est de la régler dans Zend_Controller_Front, qui le transmets dans l'objet de requête. Exemple d'utilisation pour régler une base d'URL personnalisée :

Code:

<?php
/**
 * Dispatche la requête avec une base d'URL réglé avec Zend_Controller_Front.
 */
$router     = new Zend_Controller_Router_Rewrite();
$controller = Zend_Controller_Front::getInstance();
$controller->setControllerDirectory('./application/controllers')
           ->setRouter($router)
           ->setBaseUrl('/projects/myapp'); // affecte la base d'url
$response   = $controller->dispatch();

Dans ton cas il faut faire (si je me trompe pas)

Code:

->setBaseUrl('/veilleTech');

http://framework.zend.com/manual/fr/zend.controller.request.html  (Chapitre 7.4.2.2)

Dernière modification par yannux (03-08-2007 16:55:35)


Société : Direct Info Service

Hors ligne

 

#32 03-08-2007 18:34:52

nadia2507
Membre
Date d'inscription: 03-08-2007
Messages: 27

Re: IndexController - Action introuvable

ta raison yannux, le probleme c'est le dossier veilleTech, qui'est la racine de mon site, mais je n'ai paq  compris la solution proposée
où est ce que je dois ajouter:setBaseUrl('/veilleTech');
je l'ai mis dan index.php mais ça na pa marcher
et le tutoriel n'a pa indiqué ce genre de problem

Hors ligne

 

#33 03-08-2007 18:56:39

yannux
Membre
Lieu: Rennes
Date d'inscription: 07-04-2007
Messages: 284
Site web

Re: IndexController - Action introuvable

Dans l'extrait de documentation que je t'ai montré

Code:

$controller = Zend_Controller_Front::getInstance();
$controller->setControllerDirectory('./application/controllers')
           ->setRouter($router)
           ->setBaseUrl('/projects/myapp'); // affecte la base d'url

donc pour toi

Code:

$frontController = Zend_Controller_Front::getInstance();
$frontController->throwExceptions(true);
$frontController->setControllerDirectory('./application/controllers');
$frontController->setBaseUrl('/veilleTech'); // affecte la base d'url
$frontController->dispatch();

Regarde bien la documentation et essaye d'appliquer l'exemple à ta situation smile


Société : Direct Info Service

Hors ligne

 

#34 18-09-2007 02:41:24

dlusignan
Nouveau membre
Lieu: Montréal/Québec
Date d'inscription: 18-09-2007
Messages: 3
Site web

Re: IndexController - Action introuvable

Bonjour tout le monde!

Je suis un programmeur VB et .net qui fais le saut le saut en php. (oui je sais que je suis un peu en retard wink ).

Bref, j'essai de réaliser ce tutoriels et moi aussi j'ai cet erreur. Je peu voir mon index.phtml, mais lorsque j'ajoute

/index/ajouter à mon url je me tape un 404 en pleine tronche. Je vous montre mon code:

index.php ->

<?php
error_reporting(E_ALL|E_STRICT);
date_default_timezone_set('America/Montreal');
set_include_path('.'
    . PATH_SEPARATOR . './library'
    . PATH_SEPARATOR . './application/models/'
    . PATH_SEPARATOR . get_include_path());


include "Zend/Loader.php";
Zend_Loader::loadClass('Zend_Controller_Front');

// setup controller
$frontController = Zend_Controller_Front::getInstance();
$frontController->throwExceptions(true);
$frontController->setControllerDirectory('./application/controllers');


// run!
$frontController->dispatch();


les .htaccess sont tous identique à ceux du tutoriels et j'ai suivi toutes vos recommandations en matières de httpd.conf :

LoadModule rewrite_module modules/mod_rewrite.so

AccessFileName .htaccess
<Directory />
    Options FollowSymLinks
    AllowOverride all
    Order deny,allow
    Deny from all
    Satisfy all
</Directory>

mon arborescence et mon IndexController.php sont identique à ceus du tutoriel.

Bref, on ne se racontera pas d'histoire moi je trouve les explication très clair et je juge avoir quand même de l'expérience en programmation. Sur .net et Java, mais en ce moment je ne trouve pas d'issu.

Je trouve que PHP semble être un language intéressant, mais c'est long avant d'être fonctionnelle comparativement au produit Microsoft ou en 15 min. tu es prête à travailler. Maintenant ça me fait au moin une douzaine de soirée que je tripote sur ce tuto. de PHP.

Pouvez-vous m'aidez SVP?


Daniel Lusignan

Hors ligne

 

#35 18-09-2007 09:05:21

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: IndexController - Action introuvable

Bonjour,

Une erreur 404 est forcément liée aux rewriteRules de apache (note : ces règles de réécritures ne sont utiles que pour le Zend Framework, pas pour PHP en général).

Pour l'instant le problème n'est lié qu'aux configurations de apache (on n'a pas encore atteint PHP, si le problème était venu du routage ou du ZF, tu aurais eu une exception ou une erreur PHP).

Est-ce que tu peux nous envoyer ton .htaccess ? il y a plusieurs tuto qui utilisent des .htaccess différents.

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#36 19-09-2007 02:14:48

dlusignan
Nouveau membre
Lieu: Montréal/Québec
Date d'inscription: 18-09-2007
Messages: 3
Site web

Re: IndexController - Action introuvable

Salut! Merci de m'avoir répondu voici mon .htaccess:

RewriteEngine on
RewriteRule .* index.php

J'ai enlevé les php magic machin truc car il causait une erreurs.

Merci


Daniel Lusignan

Hors ligne

 

#37 19-09-2007 09:16:13

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: IndexController - Action introuvable

Bonjour,

J'avoue qu'il y a un truc qui me dérange dans ton htaccess, c'est que toutes les requêtes sont orientée vers index.php, y compris les images, les css... Et il manque le RewriteEngine On
Essaye un .htaccess du type :

Code:

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

Sinon on est bien d'accord sur le fait que tu as un seul site sur ton apache (pas de virtualHost) et que tu appelles directement l'URL http://localhost/index/ajouter ?

Sinon fais gaffe aussi aux majuscules, minuscules, droits d'accès aux fichiers... en tout cas je persiste le problème se situe au niveau de la conf apache et du .htaccess... Pense aussi à relancer apache après chaque changement de configuration.

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#38 19-09-2007 14:13:56

dlusignan
Nouveau membre
Lieu: Montréal/Québec
Date d'inscription: 18-09-2007
Messages: 3
Site web

Re: IndexController - Action introuvable

Salut! Merci de me répondre.

Mon site n'est pas à la racine du serveur. Je décrirais plustôt ça comme cela:

http://localhost/monsite/index/ajouter

Donc, peut-être que le problème se trouve-là?

En passant, le RewriteEngine on se trouve à la première ligne du .htaccess que je t'ai copié.

Je vais essayé tes nouvelles modifications ce soir. (+/- 4 5 heures du matin pour toi) et t'en redonne des nouvelles aussitôt.

Merci


Daniel Lusignan

Hors ligne

 

#39 19-09-2007 16:15:45

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: IndexController - Action introuvable

Tu peux essayer avec le .htaccess de mon message précédent. Cela dit, je ne suis pas hyper calé en .htaccess parce que je fais tout dans les confs apache directement en général.

Voilà en exemple avec ma conf apache pour un site dans un sous-répertoire (dans ce cas, il faut virer ton .htaccess)

Code:

<Location /monsite>
  RewriteEngine on
  RewriteBase /monsite
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /monsite/index.php [L]
</Location>

A+, Philippe
PS : quand tu n'auras plus de 404, il faudra penser à ajouter $frontController->setBaseUrl("monsite/"); dans ton index.php
PS2 : effectivement il y avait le RewriteEngine On... je vais apprendre à lire, ça m'aidera plus tard...


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#40 22-02-2008 11:25:01

!NF0RUM@T!K
Membre
Date d'inscription: 20-02-2008
Messages: 32

Re: IndexController - Action introuvable

J'ai le même problème que vous, moi le message que j'ai c'est :

Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in c:\program files\easyphp1-8\www\test\library\Zend\Loader.php on line 37

Hors ligne

 

#41 22-02-2008 12:19:27

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: IndexController - Action introuvable

Ah... ça veut dire que ton serveur ne supporte pas PHP 5  il me semble... Qui est requis pour faire tourner le zf (5.1.4 mini je crois)

En effet il n'y  apas d'erreur de syntaxe PHP5 dans ce fichier. Mais s'il est interprété en php 4 ou inférieur, il en trouve une.

Hors ligne

 

#42 19-12-2008 17:29:52

mrlipa
Nouveau membre
Date d'inscription: 19-12-2008
Messages: 1

Re: IndexController - Action introuvable

Bonjour tout le monde

Moi aussi j'ai un probleme pareil

J'essaye d'apprendre Zend, je fait un tutoriel et a chaque fois que j'appel l'action ajouter, modifier ou supprimer j'ai le message suivante

Not Found
The requested URL /monsite/index/modifier/id/3 was not found on this server.

J'utilise wamp et je viens de verifier si le mod_rewrite est activé et il l'est!

voici mon bootstrap:

$router = new Zend_Controller_Router_Rewrite();
$frontController = Zend_Controller_Front::getInstance();
$frontController->throwExceptions(true);
$frontController->setControllerDirectory('./application/controllers');
$frontController->setBaseUrl('/public');
$frontController->setRouter($router);

Merci pour l'aide

Bonnes fêtes!
Gabriel

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