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 :

Inclusion de fichiers lors de clics sur des liens


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2019
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2019
    Messages : 61
    Par défaut Inclusion de fichiers lors de clics sur des liens
    Bonjour,

    Je suis étudiant en Informatique et débutant dans le langage PHP. J'utilise WAMP ainsi que PhpStorm.

    Je travaille actuellement sur un projet de site Web au sein d'un groupe. Grâce à Git, j'ai récupéré le code que les autres membres de mon groupe ont mis sur GitHub.

    J'arrive à afficher n'importe quelle page du projet sur mon navigateur directement à partir de PhpStorm.

    Cependant, je me suis rendu compte d'un problème lors de l'affichage d'une page du projet à partir du lien d'une autre page du projet. En effet, j'obtiens alors la page voulue, mais avec des Warnings au début qui m'indiquent
    Warning: include(../../config/config.php): failed to open stream: No such file or directory in ...
    ,et :
    Warning: include(): Failed opening '../../config/config.php' for inclusion (include_path='.;C:\php\pear') in ...
    concernant la ligne 1.

    Alors que j'obtiens la même page sans Warning si j'y accède directement depuis mon code avec la redirection de PHPStorm.

    Ci-dessous le lien vers la capture d'écran des détails de ces Warning :

    Nom : Capture2.PNG
Affichages : 405
Taille : 112,6 Ko

    En résumé, j'arrive à accéder à une page de mon projet correctement directement depuis PhpStorm, mais j'obtiens des Warnings en début de page si j'essaye d'y accéder via le lien vers cette page contenu dans une autre page du projet.


    J'ai cherché, mais n'ai malheureusement pas trouvé la solution à mon problème.

    A ce que j'ai compris, ces erreurs sont dues à des erreurs de chemin d'accès vers la page config.php, cependant, cela me semble bizarre, car lorsque je vais sur n'importe quelle page du projet pour la première fois tout se déroule normalement, ce qui veut dire que le chemin d'accès semble être correct la première fois, mais lorsque je clique sur le lien vers une autre page du projet, j'obtiens les Warning cités plus haut.

    J'ai alors pensé au fait que dans le lien vers d'autres pages du projet, j'utilise le URLOOT défini dans la page config.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    action="<?php echo URLROOT; ?>/users/sign_in"
    et que le problème avait un lien avec ça, mais je n'arrive pas à savoir si c'est le cas.

    Pour plus de renseignements, voici les codes de config.php et d'une page quelconque du projet :

    config.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php  
      // db params
      define('DB_HOST', 'localhost');
      define('DB_USER', 'root');
      define('DB_PASS', 'root');
      define('DB_NAME', 'stimulus');
     
      define('APPROOT', dirname(dirname(__FILE__)));
      define('URLROOT', 'http://localhost/isep-stimulus/');
      define('SITENAME', 'Infinite Measures');
    ?>
    et voici la page sign_in.php (page "lambda") :
    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
    <?php include '../../config/config.php';?>
    <?php require APPROOT . '/../public/css/style.php'; ?>
    <style> <?php include APPROOT . '/../public/css/style.css'; ?> </style>
    <style> <?php include APPROOT . '/../public/css/admins/sign_in.css'; ?> </style>
     
     
    <div class="container">
      <h1>Se connecter en tant qu'administrateur </h1>
      <div class="container sign-in-form-container">
        <form action="<?php echo URLROOT; ?>/users/sign_in" method="post">
          <div class="under-container">
            <div>
              <label for="name"><strong>Adresse email *</strong></label>
              <input type="text" name="name" <?php echo (!empty($data['name_error'])) ? 'is-invalid' : ''; ?> value="<?php echo $data['name'] ?>" >
              <span><?php echo $data['name_error']; ?></span>
            </div>
            <div>
              <label for="name"><strong>Mot de passe *</strong></label>
              <input type="password" name="name">
            </div>
          </div>
          <div>
            <input type="submit" class="btn-primary" value="Confirmer">
          </div>
        </form>
      </div>
    </div> 
     
    <?php require APPROOT . '/views/inc/footer.php'; ?>
    Auriez-vous une idée concernant ce problème et comment le résoudre ?

    J'espère avoir été assez clair sur l'énoncé de mon problème, n'hésitez pas à me poser des questions si ce n'est pas la cas,

    En vous remerciant par avance pour votre réponse et votre aide,

    Bien cordialement,

  2. #2
    Membre chevronné Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Par défaut
    Salut,
    je pense que les warnings sont clairs.
    Le fichier config.php n'est pas trouvé.

    Est-ce qu'il ne faudrait pas que tu installes PEAR sur ta machine ou le paramétrer ?
    Demande à tes potes s'ils n'utilisent pas des extensions PHP spécifiques.

    Tu as un guide ici https://php.developpez.com/cours/pear/installation/


    Essaie d'utiliser des chemins absolus dans tes include.
    Et puis, préfère des require / require_once plutôt.
    Include ne remonte qu'un warning alors que require (_once) une véritable erreur.

  3. #3
    Membre chevronné Avatar de ma5t3r
    Homme Profil pro
    Développeur freelance
    Inscrit en
    Mai 2015
    Messages
    320
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2015
    Messages : 320
    Par défaut
    Qu'est-ce que phpStorm pour toi ?
    En ce qui me concerne, c'est mon IDE.
    J'ai l'impression que tu confonds un truc là.

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2019
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2019
    Messages : 61
    Par défaut
    Merci beaucoup pour ta réponse,

    Je vais suivre tes instructions et chercher de ce côté là.

    Pour ce qui est de phpStorm, pour moi, c'est mon IDE. Lorsque je dis que j'accède à une page de mon projet directement depuis phpStorm, je fais référence au fait qu'après avoir fini de coder une page, afin de voir le rendu sur le navigateur, je clique directement sur le lien vers le navigateur que j'utilise (en l’occurrence Google Chrome) :

    Nom : CaptureAccesNavigateur.PNG
Affichages : 371
Taille : 14,2 Ko

    Bien cordialement,

    Gabriel Enriquez

  5. #5
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 497
    Billets dans le blog
    1
    Par défaut
    Pour remonter de 2 niveaux dans l'arborescence, au lieu de faire include '../../config/config.php';, je ferais include dirname(dirname('config'.DIRECTORY_SEPARATOR.'config.php'));

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2019
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2019
    Messages : 61
    Par défaut
    Merci pour ta réponse,

    J'ai mis la ligne de code que tu m'as indiquée à la première ligne de ma page sign_in.php, mais lorsque je l'affiche j'obtiens cette erreur :

    Warning: include(C:\wamp64\www\isep-stimulus\app\views\users): failed to open stream: Permission denied in C:\wamp64\www\isep-stimulus\app\views\users\sign_in.php on line 1

    Warning: include(): Failed opening '.' for inclusion (include_path='.;C:\php\pear') in C:\wamp64\www\isep-stimulus\app\views\users\sign_in.php on line 1
    Puis, après cela, je ne peux pas accéder aux paramètres de la page config.php tel que APPROOT.

    Cela signifie que j'ai un problème de droits d'accès, je vais essayer de voir comment résoudre cette erreur.

    Auriez-vous une idée concernant la résolution de ce problème ?

    En vous remerciant par avance pour votre réponse,

    Bien cordialement,

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

Discussions similaires

  1. Compteurs de clics sur des liens
    Par F@bien.fd dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 22
    Dernier message: 19/11/2014, 23h31
  2. Réponses: 1
    Dernier message: 05/05/2009, 08h36
  3. Réponses: 3
    Dernier message: 06/12/2007, 07h42
  4. Explorer plante lors d'action sur des fichiers
    Par shloka dans le forum Windows Vista
    Réponses: 4
    Dernier message: 16/10/2007, 09h10
  5. JSP : Récupérer valeur lors du clic sur un bouton
    Par ze veritable farf dans le forum Servlets/JSP
    Réponses: 12
    Dernier message: 11/04/2006, 11h16

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