Problème include

Résolu
Bonjour a tous :)
J'ai un problème avec include sa ne marche pas.
voici la ligne :
<?php include('/public_html/menu/ex5.php'); ?>
et voici l'erreur :
Warning: include(): Failed opening '/public_html/menu/ex5.php' for inclusion (include_path='.:/opt/php-5.5/pear') in /home/u390705073/public_html/anime/My_hero_academia/index.php on line 11

3 réponses

  1. Bonjour

    Quand tu écris '/public_html/menu/ex5.php', le chemin commence par un /, ce qui signifie que tu pars de la racine du disque dur.
    D'après le reste du message, public_html n'est pas à la racine du disque, mais est un sous-répertoire de /home/u390705073/

    Les chemins des fichiers (pour les include) doivent être relatifs (précisés par rapport au répertoire courant) ou basés sur la variable $_SERVER['DOCUMENT_ROOT'] qui indique quel répertoire est la racine de ton site

    Ce qui pourrait donner quelque chose du genre :
    <?php include('../../menu/ex5.php'); ?>

    ou
    <?php include($_SERVER['DOCUMENT_ROOT'].'/menu/ex5.php'); ?> 
    1. Salut,

      Supprime le slash au début de ton chemin pour utiliser un chemin relatif (dépend de l'endroit où est enregistré ton fichier) ou renseigne le chemin absolu :
      <?php 
      // chemin relatif depuis le dossier /home/u390705073/public_html/anime/My_hero_academia/
      include('../../menu/ex5.php'); ?> 
      
      // chemin absolu
      include('/home/u390705073/public_html/menu/ex5.php'); ?> 
      


      Bonne journée,
      1. Il faut absolument éviter de coder un chemin absolu 'en dur' pour au moins deux raisons :
        - il n'est pas compatible entre la version locale et la version en ligne du site, ou en cas de changement d'hébergement
        - chez certains hébergeurs, le chemin absolu peut changer sans préavis