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 d'accès aux fichiers avec require


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut Problème d'accès aux fichiers avec require
    Bien le bonjours à tous,

    Je viens poster ce petit message car j'ai un soucis minime mais embêtant.

    Mon petit soucis est le suivant,
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    require('/resources/include/function.inc.php');

    Lors de l'appelle de cette fonction sous windows cela marche nickel, mais sur mon environnement mac cela ne marche pas car il ne trouve pas le fichier.

    VirtualHost sur windows
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <VirtualHost dossier-local:80>
      ServerAdmin admin@example.com
      DocumentRoot "C:\wamp\www\perso\dossier"
      ServerName dossier-local:80
      <Directory "C:\wamp\www\perso\dossier">
          RewriteRule . /index.php [L]
      </Directory>
    </VirtualHost>
    VirtualHost sur mac
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <VirtualHost 127.0.0.1:80>
        ServeurAdmin admin@exemple.com
        DocumentRoot "/Users/monnom/Sites/dossier"
        ServerName dossier.dev
        <Directory "/Users/monnom/Sites/dossier"
            RewriteRule . /index.php [L]
        </Directory>
    </VirtualHost>
    Sachant que si j'enlève le require le site marche bien donc l'allias est bien fait (je pense).

    Pour que mon require marche je suis obliger d’appeler comme ceci:
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $path = $_SERVER[DOCUMENT_ROOT];
    require($path.'/resources/include/function.inc.php');

    Donc à partir de là je pense que le problème viens de mes fichiers de cfg d'apache sur mac (j'utilise le serveur apache du mac pas MAMP) mais je ne sais d'ou.

    Je vous remercie d'avance

  2. #2
    Membre confirmé Avatar de Inazo
    Profil pro
    Gérant - société de développement web
    Inscrit en
    Avril 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Gérant - société de développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2007
    Messages : 417
    Points : 632
    Points
    632
    Par défaut
    Bonjour,

    J'avais bien envie de dire quel idée de développer sur Mac, mais restons serieux

    Je pense plutôt que cela vient de la manière dont Mac gère les chemins d'accès car pour lui le fait de commencer par / lui demande de rechercher à partir de la racine du disque dur et non pas de l'hébergement web

    Vous n'auriez pas du ajouter le / devant votre path mais plutôt l'écrire comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require('resources/include/function.inc.php');
    Cordialement,

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    Salut Inazo,

    J'ai envie de dire chacun son environnement

    Si je veux partir de la base du serveur c'est qu'il y'a une raison, je te l'accorde pas forcément pour le require mais le css doit être absolument partir de la base à cause de l'url rewriting.

    Et je pensais plutôt que c'était une config au niveau du server mais ce que vous dite est tout à fait possible je laisse le poste ouvert pour l'instant.

    Merci de ta réponse bonne soirée.

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Points : 1 022
    Points
    1 022
    Par défaut
    tu peu surement utiliser cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    define ('HOST_DIR' , dirname(__FILE__).'/' );
    ou en php5.3 __dir__
    http://php.net/manual/fr/language.co...predefined.php

    comme cela à chaque require tu peu écrire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require HOST_DIR.'bibli/monscript.php' ;

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    Merci de ta réponse ascito après réflexions je pense je vais mettre résolu

  6. #6
    Membre confirmé Avatar de Inazo
    Profil pro
    Gérant - société de développement web
    Inscrit en
    Avril 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Gérant - société de développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2007
    Messages : 417
    Points : 632
    Points
    632
    Par défaut
    Je précise humour sur ma remarque concernant le Mac OS

    Sinon aucune corrélation entre URL Rewrite ou CSS et les require depuis la racine du disque dur...

    On parle bien de racine du disque pas du domaine ou sous-domaine web concerné attention.

    Cordialement,

  7. #7
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Points : 1 022
    Points
    1 022
    Par défaut
    Sinon aucune corrélation entre URL Rewrite ou CSS et les require depuis la racine du disque dur...

    On parle bien de racine du disque pas du domaine ou sous-domaine web concerné attention.
    même réflexion ,

    il faut une deuxième variable pour les css style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    define ('HOST_PATH' ,str_replace ('index.php' , '' , $_SERVER['SCRIPT_NAME'] ) );

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

Discussions similaires

  1. [WD-2010] Problème modification des liens d'accès aux fichiers
    Par angelino69 dans le forum VBA Word
    Réponses: 4
    Dernier message: 15/02/2012, 10h52
  2. Réponses: 0
    Dernier message: 14/11/2010, 20h54
  3. Réponses: 1
    Dernier message: 09/07/2010, 17h22
  4. Problème droits d'accès aux fichiers
    Par nico33410 dans le forum Entrée/Sortie
    Réponses: 0
    Dernier message: 17/07/2009, 17h59
  5. Problème de droit d'accès aux fichiers (Vista/NTFS)
    Par webgig2002 dans le forum Windows Forms
    Réponses: 0
    Dernier message: 15/07/2009, 18h10

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