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

Symfony PHP Discussion :

Twig sans Symfony et page d'erreur (404)


Sujet :

Symfony PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 33
    Points : 34
    Points
    34
    Par défaut Twig sans Symfony et page d'erreur (404)
    Bonjour,

    J'utilise Twig comme moteur de templates seul sans Symfony. Je n'arrive pas à renvoyer les erreurs d'url type 404 vers un template de page d'erreur 404 (et d'une manière générale récupérer les exceptions PHP lancées par Twig).

    J'ai essayé de mettre des if mais l'exception pour une page inexistante est lancée avant, dans le loader Twig.

    Je n'ai rien trouvé à ce sujet sur le web, les seuls articles que j'ai pu lire concernent l'utilisation de Twig avec Symfony.

    Merci d'avance.

    PS : j'ai des urls du type http://www.site.com/ma-page. Pour une page inexistante, X-debug m'affiche ceci :

    Fatal error: Uncaught exception 'Twig_Error_Loader' with message 'Unable to find template "ma-page.html" (looked into: templates).' in C:\Program Files\wamp\www\dev\lib\twig\lib\Twig\Loader\Filesystem.php on line 129
    ( ! ) Twig_Error_Loader: Unable to find template "ma-page.html" (looked into: templates). in C:\Program Files\wamp\www\dev\lib\twig\lib\Twig\Loader\Filesystem.php on line 129

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 692
    Points : 20 243
    Points
    20 243
    Par défaut
    les exception se gèrent avec un bloc try/catch pas avec des if :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    try{
        $tpl = $twig->loadTemplate('index.html');
    } catch (Twig_Error_Loader $e) {
        $tpl = $twig->loadTemplate('404.html');
    }

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 33
    Points : 34
    Points
    34
    Par défaut Ok merci
    Pour les exceptions je connais, mais sur ce coup là je suis passé à côté (peut-être le cerveau fatigué par trop d'heures de dev consécutives dans la même journée !). En fait je cherchais plus à régler mon problème avec la fonction file_exists() (d'où mes 'if').

Discussions similaires

  1. Réponses: 6
    Dernier message: 30/05/2010, 23h41
  2. Réponses: 13
    Dernier message: 16/02/2010, 19h55
  3. Page d'erreur 404 avec switch et case
    Par Olivier Regnier dans le forum Langage
    Réponses: 6
    Dernier message: 24/07/2009, 09h56
  4. personnaliser les pages d'erreur 404 et autres
    Par aurelientp dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 18/02/2008, 13h15
  5. Récupérer l'url complète dans une page d'erreur 404
    Par Olivier Regnier dans le forum Langage
    Réponses: 4
    Dernier message: 05/09/2007, 16h26

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