Fonction include .....

Résolu
t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   -  
t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   -
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

  1. t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   11
     
    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 ...............
    0
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    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 .'%"';
    // ...
    0
    1. t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   11
       
      Et en faisant comme tu dis, il faudra que je fasses un script pour chaque lettre de l'alphabet .......... ?
      0
    2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      Non, il faut utiliser $lettre plutôt que $_GET['lettre']
      0
    3. t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   11
       
      Mais tu es bien obligé d'utiliser $_GET['lettre'] pour récupérer la valeur de "lettre" qui vient d'un autre script !?
      0
    4. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      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.
      0
    5. t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   11
       
      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 ???
      0
  3. t671 Messages postés 1478 Date d'inscription   Statut Membre Dernière intervention   11
     
    Merci ! J'ai rajouter le menu dans le 2° script, et je boucle sur celui-ci à la demande ....

    A ++
    0