Fonction include .....

Résolu
Bonjour,

Mon include :
$inc = 'liste_nom_02.php&lettre=A'; 
........ 
include($inc);

me renvoie l'erreur :
Warning: include(liste_nom_02.php&lettre=A) [function.include]: failed to open stream: No such file or directory in ..........

Est-ce parceque je lis une base de données ???

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Le script qui contient l'include, et l'include sont dans le même répertoire.
    Mais les éléments de la base de donnée ...............
    1. Salut,

      Les paramètres GET ne fonctionnent pas via un include sans passer par HTTP.
      Tu peux faire comme ceci :

      <?php
      $lettre = 'A';
      include 'liste_nom_02.php';


      Et la variable $lettre sera accessible dans le fichier inclu :
      <?php
      // Fichier: liste_nom_02.php
      include 'pdo.connexion.php';
      
      $sql = 'SELECT * FROM utilisateurs WHERE nom LIKE "'. $lettre .'%"';
      // ...
      1. Et en faisant comme tu dis, il faudra que je fasses un script pour chaque lettre de l'alphabet .......... ?
      2. Non, il faut utiliser $lettre plutôt que $_GET['lettre']
      3. Mais tu es bien obligé d'utiliser $_GET['lettre'] pour récupérer la valeur de "lettre" qui vient d'un autre script !?
      4. Les paramètres GET ne fonctionnent qu'avec une URL, donc par exemple :
        http://example.com/page.php?param=valeur
        Sera traduit par « exécuter page.php avec $_GET['param'] qui vaut "valeur" ».

        Ici, tu demandes à inclure « liste_nom_02.php », sans donner plus d'informations.
        Ce fichier sera directement inclu depuis le disque dur du serveur. Le serveur ne communiquera pas avec lui-même via Internet (HTTP) pour obtenir le fichier.
        Le code du fichier « liste_nom_02.php » sera "inclu" à l'intérieur de la page "appelante".
        Les variables définies dans la page appelante sont donc accessibles par le fichier inclu.

        Par contre, intile d'essayer ceci :
        <?php
        include 'http://example.com/liste_nom_02.php?letter=A';
        Précédemment, j'ai souligné le mot « exécuter » qui est très important !
        Lorsqu'on demande un script PHP par HTTP, il est exécuté !
        Le PHP n'est plus présent une fois le fichier envoyé.
        Tu inclueras donc un fichier vide.
      5. Si j'ai bien compris, je travaille avec $lettre dans la page appelante, et comme la page appelée est inclus dans l'appelante, je peux utliser $lettre dans la page appelée !
        C'est ça ???
    2. Merci ! J'ai rajouter le menu dans le 2° script, et je boucle sur celui-ci à la demande ....

      A ++