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 :

Page blanche instanciation d'objet [PHP 5.0]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 336
    Par défaut Page blanche instanciation d'objet
    Bonjours,

    Je vous expose le problème :

    Mon site se compose d'une page d'index. Dans cette page, j'inclus une classe php qui me permet de créer une instance de cette classe seulement lorsque je desire aller sur mon site j ai une page blanche :

    je vous met le code que j'ai :

    index.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    ....
       <!-- pas de script php avant -->
       <?php
          include('mon_menu.class.php');
          include('connexion_base.php');
     
          $menu = new Menu();//cette ligne me met une page blanche sans cette ligne : OK
          echo "test";
       ?>
       <!-- pas de script php apres -->
    ...
    connexion_base.php
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    <?php
     
    class ConnexionBase
    {
        //attribut permettant la connexion à une base de donnée.
        private $connexion;
     
        public function __construct()
        {
     
            try
            {
    	    $PDO_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    //valeur reelle remplacee par des . pour ce forum            
    $this->connexion = new PDO('mysql:host=.....;dbname=....','.....','.....',$PDO_options);
            }
            catch(Exception $e)
            {
     
                echo "Erreur de connexion :".$e->getMessage();
     
            }
     
        }
     
        public function getConnexion()
        {
    	return $this->connexion;
        }
    }
     
    ?>
    mon_menu.class.php
    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
     
    include('connexion_base.php');
     
    class Menu
    {
     
    	//private $connexion;	
     
    	public function __construct()
    	{
     
    	  //  $this->connexion = new ConnexionBase();
     
    	}
     
    ?>

  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
    Tu dois vérifier l'etat du error_reporting de ton installation PHP pour voir les erreurs affichés à l'écran.

    Pour l'instant il me semble que tu as inclus le fichier connexion_base.php à deux reprises, donc tu définis deux fois la classe ConnexionBase. Tu devrais utiliser include_once ou mieux n'inclure le fichier qu'une fois.

  3. #3
    Membre très actif
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 336
    Par défaut
    j ai enlever l'inclusion du fichier connexion_base.php de l'index.php et remplacer les include par include_once.

    J'ai malheureusement le même problème.
    J'ai fait un test en créent un objet connexion(à la place d'un objet menu) et là la page s'affiche j ai l'impression que le problème vient du fichier mon_menu.class.php qui pourtant ne contient rien mis à part un constructeur vide (par défaut?).

    Je doit préciser une chose aussi ces fichier son héberger chez un hébergeur gratuit donc pour activer le rapport d'erreur je ne sais pas comment m'y prendre.

    EDIT : l etat de mon error report est : 6135 qu est ce que cela signifie ?
    voila j ai comprit dans la configuration j ai sa :

    display_errors Off Off
    display_startup_errors Off

    bon j active le rapport d erreur en court d execution grace à :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
          ini_set('display_errors','1');
         ....
       ?>
    et la les erreurs apparaissent :

    Parse error: syntax error, unexpected $end, expecting T_FUNCTION in /home/vol7/hebergratuit.com/rober_9161677/htdocs/mon_menu.class.php on line 17
    le fichier est celui ci :
    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
     
    include_once('connexion_base.php');
     
    class Menu
    {
     
    	//private $connexion;	
     
    	public function __construct()
    	{
     
    	  //  $this->connexion = new ConnexionBase();
     
    	}
     
    ?>
    probleme resolut il manquait la fermeture de la classe : }

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

Discussions similaires

  1. Page blanche en instanciant un modèle
    Par sttcom dans le forum Zend Framework
    Réponses: 17
    Dernier message: 08/11/2010, 20h13
  2. Instancier un objet page depuis son nom "maPage.aspx"
    Par tontonks dans le forum ASP.NET
    Réponses: 8
    Dernier message: 16/08/2010, 17h27
  3. [Reflection] Instancier un objet
    Par bl@st dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 28/10/2008, 11h09
  4. [POO] Instancier un objet avec le nom de la classe
    Par shinchun dans le forum Langage
    Réponses: 4
    Dernier message: 08/06/2006, 13h44
  5. [CR] Avoir seulement une page blanche qd la base est vide???
    Par littleChick dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 13/08/2002, 18h26

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