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

Bibliothèques et frameworks PHP Discussion :

[PEAR] Fatal error: require_once(): Failed opening required 'HTML/Table/Storage.php'


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 8
    Par défaut [PEAR] Fatal error: require_once(): Failed opening required 'HTML/Table/Storage.php'
    Bonjour,

    Je viens solliciter votre aide pour résoudre un problème auquel je suis confronté depuis que j’ai transféré mon site web chez mon hébergeur (1and1).

    Mon site web a été conçu en local sous wamp puis transferé chez l’hébergeur (1and1). Le transfert s’est déroulé « normalement » : tous les dossiers, sous-dossiers et fichiers sont présents. Mais, quand j’essaie d’y accéder en entrant mon nom de domaine dans la barre d’adresse, j’ai ce message d’erreur :
    Fatal error: require_once(): Failed opening required 'HTML/Table/Storage.php' (include_path='.:/homepages/45/d508047579/htdocs/dokeos/main/inc/lib/pear:/usr/lib/php5.4') in /homepages/45/d508047579/htdocs/dokeos/main/inc/lib/pear/HTML/Table.php on line 40
    je suis débutant en php et mon expérience en tant que Développeur est par conséquent très limitée. De plus tout ceci me semble pour l'instant être du charabia.C'est pourquoi je sollicite votre aide.
    Voici l’extrait de mon code Table.php.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    /**
     * Requires PEAR, HTML_Common and HTML_Table_Storage
     */
    require_once 'PEAR.php';
    require_once 'HTML/Common.php';
    require_once 'HTML/Table/Storage.php';
     
    /**
     * PEAR::HTML_Table makes the design of HTML tables easy, flexible, reusable and efficient.
    ?>
    J’ai vérifié que le répertoire 'HTML/Table/Storage.php' est bien présent dans l’arborescence à l’endroit prévu. Quelqu’un a-il une idée pour résoudre ce problème ? je vous remercie d’avance pour votre aide.

  2. #2
    Membre confirmé Avatar de eaglesnipe
    Homme Profil pro
    Ingénieur Etudes et Développement
    Inscrit en
    Janvier 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes et Développement
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2008
    Messages : 75
    Par défaut
    Bonsoir,

    Peux tu nous mettre ton arborescence de dossiers, sans quoi nous aurons du mal à visualiser la situation.

    D'autre part, as-tu vérifier que les droits sur les fichiers en question sont corrects ?

  3. #3
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 8
    Par défaut Fatal error :Failed openning required 'HTML/Table/Storage.php'
    Bonjour

    Je vais commencer par ta deuxième question.
    Effectivement j'ai vérifié et corrigé les droits en utilisant CHMOD 777. Mais je ne sais pas si c'est recommendé d'accorder les droits de lecture, écriture et exécution à tous les utilisateurs comme je l'ai fait.
    D'autre part, le fichier storage.php a été crée avec la version PHP.4 au lieu de 5.4 que j'applique à mon site. Je ne sais toujours pas comment adapter les scripts à la bonne version du PHP.

    Ci-dessous l'arborescence des dossiers

    .:/main/inc/lib/pear/HTML
    .:/main/inc/lib/pear/OLE
    .:/main/inc/lib/pear/Pager
    .:/main/inc/lib/pear/Spreadsheet_Excel_Writer
    .:/main/inc/lib/pear/Text
    .:/main/inc/lib/pear/PEAR.php


    .:/main/inc/lib/pear/HTML/QuickForm
    .:/main/inc/lib/pear/HTML/Table
    .:/main/inc/lib/pear/HTML/Common.php
    .:/main/inc/lib/pear/HTML/QuickForm.php
    .:/main/inc/lib/pear/HTML/Table.php

    .:/main/inc/lib/pear/HTML/Table/Storage.php

  4. #4
    Membre confirmé Avatar de eaglesnipe
    Homme Profil pro
    Ingénieur Etudes et Développement
    Inscrit en
    Janvier 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes et Développement
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2008
    Messages : 75
    Par défaut
    Bonsoir,

    Il n'est en effet pas recommandé de mettre des droits en 777. Mais au moins on sait que le problème ne provient pas de là.
    Des droits en 644 seraient suffisants je pense dans ta situation.
    Ci après un lien intéressant listant quels droits mettre dans quel contexte : http://forums.web4all.fr/topic/3727-...-vos-fichiers/

    Pour en revenir à ton problème, je ne vois pas de soucis dans ton arborescence :
    - l'include path est connu;
    - les 2 premiers require() sont fonctionnels;
    - le fichier du dernier require() est bien présent dans l'arbo et dans le path attendu.

    Par hasard (on ne sait jamais), n'as tu pas une différence de casse dans le nom de ton fichier et/ou répertoire ? Une majuscule en trop ou moins par exemple, genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .:/main/inc/lib/pear/HTML/Table/storage.php
    ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .:/main/inc/lib/pear/HTML/Table/STorage.php
    ?

    Un test intéressant à faire également serait de vérifier l'existence du fichier avec la fonction is_file().
    http://fr.php.net/manual/fr/function.is-file.php

  5. #5
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 8
    Par défaut
    Bonjour eaglesnipe

    Je te remercie pour tes observations et commentaires.
    D'autrepart, j'aimerai bien appliquer le test avec "is_file()" que tu me recommande.
    Mais, comme je suis débutant en php, peux-tu me décrire la procdure pas à pas comme tu l'as fait pour vérifier l'existence ou non de la casse dans le nom de fichier et/ou des répertoire ?

    En effet, je ne sais pas si je dois éditer le fichier "storage.php" qui n'est pas reconnu et y insérer le code "is_file()"
    Si oui à quelle emplacement.

    A propos de la casse, en fait les nom de dossiers et fichiers sont exactement comme dans l'arbo que je t'ai mis en haut car, j'ai juste fait une copie du répertoire.

    Enfin je te remercie infiniment pour les liens sur les droits. Le site en question est très didactique.

  6. #6
    Membre confirmé Avatar de eaglesnipe
    Homme Profil pro
    Ingénieur Etudes et Développement
    Inscrit en
    Janvier 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes et Développement
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2008
    Messages : 75
    Par défaut
    Bonjour arakscons,

    L'utilisation de la fonction is_file() est vraiment simple.

    Test souhaité :
    • Vérifier que le fichier à charger (HTML/Table/Storage.php)depuis le script /HTML/Table.php existe bien et est régulier


    Résultat attendu :
    • La fonction renvoi un booléen, donc TRUE si le fichier est OK, FALSE sinon.


    Le test :
    • Dans ton script /HTML/Table.php, avant ton require() problématique
    • L'instruction est la suivante
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      var_dump(is_file(HTML/Table/Storage.php));
    • Plus qu'à regarder le résultat
      • Si TRUE, le problème est autre
      • Si FALSE, le fichier n'existe pas (path incorrect, casse non respectée, etc.) ou droits insuffisants.

Discussions similaires

  1. Fatal error: require_once(): Failed opening required '__DIR__\bootstrap.php'
    Par MInfo25 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 11/01/2018, 17h48
  2. [Smarty] Failed opening required '../Smarty/Smarty.class.php'
    Par Invité dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 11/11/2010, 19h31
  3. Réponses: 2
    Dernier message: 03/12/2009, 16h38
  4. [PEAR][DB] Error pear : DB_DataObject Error: Connect failed, turn on debugging to 5 see why
    Par lailalachir dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 18/07/2007, 14h51
  5. [EasyPHP] Fatal error: Can't open privilege tables
    Par lou0123 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 13/04/2006, 16h35

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