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

Langage PHP Discussion :

Problème avec un require_once


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2009
    Messages : 24
    Par défaut Problème avec un require_once
    Bonjour à tous.

    Je suis actuellement sur un projet PHP, mais je me retrouve face à un problème que je ne comprends pas.

    Voici l'arborescence de mon application :
    http://www.screencast.com/t/tCiCS1uh

    Et voici bêtement mon index :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
    require_once "bootstrap.php";
    require_once LIBPATH . "PageController.php";
    echo "test";
     
    class IndexController extends PageController
    {
      protected $view;
      public function __construct()
      {
        parent::__construct();
      }
      public function execute()
      {
        $this->view->display('/index/index.tpl');
      }
    }
    $controller = new IndexController();
    $controller->run();
    Et voici le fichier bootstrap.php que j'appelle au début :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php
     
    /**
     * Initialisation of the constants used in the application
     */
     
    $dirname = dirname(realpath(__FILE__));
     
    define("BASEPATH", $dirname . "/../");
    define("APPPATH", $dirname);
    define("CONFIGPATH",BASEPATH . "/configs");
    define("VIEWSPATH",BASEPATH . "/views");
    define("MODELSPATH",BASEPATH . "/models");
    define("CONTPATH",BASEPATH . "/controllers");
    define("PLUGINSPATH",BASEPATH . "/plugins");
    define("PUBPATH",BASEPATH . "/public");
    define("LIBPATH",BASEPATH . "/library");
    define("EXTLIBPATH",BASEPATH . "/../library/");
    Là où ça pose un problème, c'est qu'il ne me fait pas mon require_once LIBPATH . "PageController.php".
    La constante LIBPATH est définie dans le bootstrap.php que je require juste au dessus.
    J'ai déjà essayé de faire le require directement sans le LIBPATH, mais il ne fonctionne pas quand même. Je le remarque puisqu'il ne m'affiche pas le echo juste après le require. Si je mets un echo au début du fichier PageController.php, il ne me l'affiche pas non plus.
    Je ne comprends donc pas pourquoi il m'en fait un, mais pas deux.
    De plus, il m'affiche une page blanche, et aucun message d'erreur, que je mette n'importe quoi comme require (alors que l'affichage des erreurs est activé dans le php.ini).

    Bref, je suis perdu. Avez-vous des idées?

    Merci à vous

    EDIT : Bon, c'était une simple erreur de débutant
    J'oubliais simplement le slash quand je faisais le require.
    Donc au lieu de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once LIBPATH . "PageController.php";
    Je devais mettre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require_once LIBPATH . "/PageController.php";
    Désolé d'avoir été con

    Ceci dit, j'en profite pour demander "Pourquoi Apache ne m'a pas averti qu'il ne trouvait pas le fichier?"
    Je n'ai aucun message d'erreur quand je fais un mauvais include ou require

  2. #2
    Membre Expert
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Par défaut
    Salut,
    Ceci dit, j'en profite pour demander "Pourquoi Apache ne m'a pas averti qu'il ne trouvait pas le fichier?"
    Je n'ai aucun message d'erreur quand je fais un mauvais include ou require
    Cela n'est pas la responsabilité d'Apache qui est un serveur web mais plutôt de de l'interpréteur PHP. Dans ton cas, tu dois regarder les directives PHP display_errors et error_reporting du fichier php.ini.

  3. #3
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2009
    Messages : 24
    Par défaut
    Merci pour ta réponse pertinente.
    En effet, c'est dans le php.ini que je dois vérifier cela. Et c'est ce que j'avais fait, mais les deux directives d'affichage d'erreur étaient sur "On".

    J'me suis donc penché sur une autre piste. J'avais installé Zend Server, et lui même possédait une version du php.ini, et c'est cette version qui était utilisée...

    Donc voilà, problème réglé! Merci!

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

Discussions similaires

  1. [Tests] require_once lors d'un test
    Par M4kn4sh dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 24/10/2012, 11h11
  2. [PHP 5.2] Problème avec require_once et une classe
    Par Psycadi dans le forum Langage
    Réponses: 6
    Dernier message: 11/10/2010, 11h38
  3. problème avec require_once()
    Par symff dans le forum Langage
    Réponses: 7
    Dernier message: 18/05/2010, 15h05
  4. [POO] Problème avec un require_once dans une classe
    Par Sayrus dans le forum Langage
    Réponses: 5
    Dernier message: 23/02/2008, 15h40
  5. Problème avec require_once
    Par f1vincent dans le forum Langage
    Réponses: 9
    Dernier message: 19/09/2006, 17h22

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