Probléme require

Bonjour,

j'ai un petit souci pour afficher les frase dans mon include

j'ai mis ce code en haut de la page

require_once DIR_INCLUDE.'/communications.inc.php';
var_dump($_msg);


et normalement ca devrait recupére la page communication

<?php

    // 
    
    $_msg['message_index_admin'] = 'index admin';
    
    $_msg['message_foo'] = 'foo';
    
    $_msg['message_bar'] = 'bar';
    
?>


et son érreur :

Notice: Undefined variable: _msg in /var/www/legtux.org/users/lesite/modules/admin/index.admin.php on line 14
NULL

ou est mon érreur et pk il bug au lieu d'afficher ma phrase

merci

11 réponses

  1. Salut,

    Que contient exactement "DIR_INCLUDE" ?
    0
    1. utilise include au lieu de require, de cette manière tu auras une erreur plus explicite sur ton problème.

      a mon avis c'est le chemin d'accès qui n'est pas bon.
      0
      1. merci de m'avoir répondu

        donc j'ai mis

        include "./includes/communications.inc.php";
        var_dump($_msg);
        


        et la page communication

        <?php
        
            // 
            
            $_msg['message_index_admin'] = 'index admin';
            
            $_msg['message_foo'] = 'foo';
            
            $_msg['message_bar'] = 'bar';
            
        ?>


        il m'indique

        array(3) { ["message_index_admin"]=> string(11) "index admin" ["message_foo"]=> string(3) "foo" ["message_bar"]=> string(3) "bar" }

        normalement il devrait mettre le mot index admin

        mrci de votre aide
        0
        1. Apparemment, tu as supprimer la constante "DIR_INCLUDE", rien avoir avec require ou include !

          normalement il devrait mettre le mot index admin
          Et c'est le cas, il t'affiche le contenu du tableau que tu a créée ...
          array(3) { 
          ["message_index_admin"]=> string(11) "index admin"
          ["message_foo"]=> string(3) "foo"
          ["message_bar"]=> string(3) "bar"
          }
          0
        2. Le rapport c'est qu'include affiche les erreurs du fichier inclus, et pas require .. donc pour débug c'est quand même mieux.
          0
      2. merci

        mais j'ai testé mettre

        require_once(DIR_INCLUDE . '/communications.inc.php');
        var_dump($_msg);

        mais il m'indique une autre érreur

        Notice: Undefined variable: _msg in /var/www/legtux.org/users/monsite/modules/admin/index.admin.php on line 13
        NULL

        donc il y a bien une notice

        et le vardump il met null
        0
        1. Oui, et je répète ma première question, que contient DIR_INCLUDE, comment est elle définit ?
          0
      3. enfait sur une page constate

        il y a ce code avec dire includ

        voilà

        //Constantes de chemin
        define('DIR_INCLUDE', 'includes');
        define('DIR_MODULE', 'modules');
        define('DIR_DESIGN', 'design');
        define('DIR_AVATAR', 'avatar');
        define('DIR_JS', 'javasscripts');
        define('DIR_IMAGE',DIR_DESIGN.'/Basic/images');
        
        0
        1. et une autre precision

          DIR_INCLUDE çà pointe vers /includes <--
          0
          1. Est ce que le fichier qui contient la définition des constantes est inclus aussi ?
            0
          2. oui il est dans le dossier

            mais si non si tu a un autre moyen d'afficher que celle du mien

            proproose
            0
          3. Désolé, je ne comprend ni ta réponse ni ta question, mets le code de toute ta page.
            0
        2. on reprend tt a zero

          sur la page index.admin.php

          j'ai mis ce code :

          require_once(DIR_INCLUDE . '/communications.inc.php');
          var_dump($_msg);
          


          et ca devrait marqué cette phrase que j'ai mis sur ma page

          communications_inc.php

          <?php
          
              // 
              
              $_msg['message_index_admin'] = 'index admin';
              
              $_msg['message_foo'] = 'foo';
              
              $_msg['message_bar'] = 'bar';
              
          ?>


          et l'include ou requiere je fais pointé directs sur le dossier include grace a cette page

          circontance.php

          http://pastebin.com/VU076pxy

          merci de ton aide
          0
          1. Est ce que circonstance.php est incluse en haut de la page index.admin.php ?
            0
        3. oui j'ai miis ca sur ma page index qui est le debut de la page des dotype

          et j'ai meme essayer de mettre ds la page index.admin

          mais ca ne fait rien

          j'ai tester sur la racine la page index ou il y a le dovctype et le titre

          voil ma page index ou j'ai mis linclude

          http://pastebin.com/F1gKuBXV

          il m'affiche

          Notice: Undefined variable: _msg in /var/www/legtux.org/users/leprojet/modules/admin/index.admin.php on line 14

          ensuite j'ai tester de mettre

          require_once('./includes/constantes.inc.php'); par

          include "./includes/constantes.inc";

          là il m'affiche

          Warning: include(./includes/constantes.inc): failed to open stream: No such file or directory in /var/www/legtux.org/users/leprojet/index.php on line 6
          
          Warning: include(): Failed opening './includes/constantes.inc' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/legtux.org/users/leprojet/index.php on line 6
          
          Warning: require_once(DIR_INCLUDE/classes/Hook.abstract.class.php): failed to open stream: No such file or directory in /var/www/legtux.org/users/leprojet/index.php on line 9
          
          Fatal error: require_once(): Failed opening required 'DIR_INCLUDE/classes/Hook.abstract.class.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/legtux.org/users/leprojet/index.php on line 9


          et si je met je sais que c'est pas ca

            include "./includes/constantes.inc";
           
           require_once('./includes/constantes.inc.php');      
          


          il m'affiche cette é erreur

          Warning: include(./includes/constantes.inc): failed to open stream: No such file or directory in /var/www/legtux.org/users/leprojet/index.php on line 6
          
          Warning: include(): Failed opening './includes/constantes.inc' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/legtux.org/users/leprojet/index.php on line 6
          
          Warning: Cannot modify header information - headers already sent by (output started at /var/www/legtux.org/users/leprojet/index.php:6) in /var/www/legtux.org/users/leprojet/index.php on line 13
          
          0
          1. apparemant ca doi t marche qd je met

            setPageTitle("Administration du site " . SITE_NAME);
            	require_once('./includes/constantes.inc.php');      
            
            //Niveau de visibilité admin , autorise pas les non connecté et compare le level avec le signe >= grace au dernier true
            //auth(ADMIN,false,true); en commentaire car fait depuis les autres pages
            include (DIR_INCLUDE."/communications.inc.php");
            var_dump($_msg);
            


            donc il met

            array(3) { ["message_index_admin"]=> string(11) "index admin" ["message_foo"]=> string(3) "foo" ["message_bar"]=> string(3) "bar" }

            doon comment affiche juste cette array

            index admin

            et pas le reste
            0
            1. si tu veux bien m'aidez a faire je te donne mon skype : ivan.gentil2

              et si tu veux je te donne le loging et mdp et tu pourras tester par toi meme c plus simple

              si tu veux
              0
              1. j'ai retester un dernier truc pour voir donc là si je met ce code ou j doit afficher les frases

                include "./includes/message.haut.php";

                et sur ma page

                <?php 
                
                echo 'Info : Pour ajouter un module admin, vous devez créer un fichier dans le dossier de votre module nommé nomDuDossier.admin.php (ou nom du dossier est celui ou vous avez stocké les fichiers du module, ex : modules/membres/ => membres.admin.php)Le kernel de l\'administration by infoxp detectera automatiquement ce fichier pour ajouter les liens à la suite.';
                
                ?>
                


                là je vois vbien ma phrase sur tout mes pages

                moi je veux qu'il affiche cette echo uniquement sur une page

                donc j'ai pensé

                $_msg['message_index_admin'] = 'index admin';

                mais c il ne veux pas afficher ma phrase

                merci de m'aider
                0