IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MVC PHP Discussion :

Rediriger vers l'index si le controller n'existe pas


Sujet :

MVC PHP

  1. #1
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Par défaut Rediriger vers l'index si le controller n'existe pas
    bonjours,

    je me met tout juste à zend framework et me pose une petite question.
    Alors j'ai une harchitecture tel que decris http://www.kitpages.fr/zf_tutorial.html

    donc
    localhost/tuto ->pas de probleme
    localhost/tuto/comment/display-> pas de probleme

    mais s'il arrive au client de taper :

    localhost/un_fichier _qui_ne_figure_pas_dans_ctrl -> la page me renvoi une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception'
    je voulais savoir à quel endroit gerer les urls valides menant à l'affichage de la pages, certainement un test sur la variable creant la route et les urls nons valides redirigeant vers une page index crée à cet effet.


    merci d'avance

  2. #2
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Je pense qu'il te manque un contrôleur par défaut.
    Consulte les Cours ZF (cf. ma signature) pour plus d'infos

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Je pense qu'il faut que tu crée un controller ErrorController, avec une action ErrorAction, et que dans cette action tu rediriges vers ton index.
    Pour plus d'infos, tu peux voir le pluggin ErrorHandler.
    La doc officielle :
    http://framework.zend.com/manual/fr/...ugins.standard
    L'atelier de Julien Pauli :
    http://julien-pauli.developpez.com/t...c-exceptions2/

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Par défaut ou j'en suis :
    bon alors j'ai trouver deux endroits où se situerais les retours d'erreurs

    Dispatchers/standard.php
    dans la fonction

    je rajoutes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    header("Location:./");
    		exit;


    et dans controllers/actions.php



    je rajoutes aussi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    header("Location:./");
    		exit;

    donc pour une url

    tuto/jesais_pas
    toto/test/je_sais_pas

    où test est un dossier existant contenant un fichier index.php ( nous retrouvons une logique serveur avec obligation d'avoir à la racine de chaque repertoire un index) les pages sont redirigés vers l'index du repertoire courant.


    alors pour faire propre il ne reste plus qu'a trouver l'objet de redirection, et la
    j'ésite à choisir dans la classe Zend_Controller_Router_Rewrite, si vous avez une idée , merci d'avance

  5. #5
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    N'oublie pas d'indiquer la raison de la redirection : http://mathieu-lemoine.developpez.co...iels/web/http/
    Dans un header Location, il faut l'URL complète et non pas une URL relative.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. vhosts redirigent vers l'index du serveur local
    Par t3__rrY dans le forum Apache
    Réponses: 3
    Dernier message: 24/10/2014, 10h35
  2. Réponses: 9
    Dernier message: 12/04/2014, 10h01
  3. Réponses: 11
    Dernier message: 06/11/2009, 17h09
  4. [PHP-JS] Rediriger vers une autre page
    Par Vlacar dans le forum Langage
    Réponses: 13
    Dernier message: 10/04/2006, 13h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo