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 :

Récupérer la valeur d'un select pour générer une autre dynamiquement


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 28
    Par défaut Récupérer la valeur d'un select pour générer une autre dynamiquement
    Bonjour tout le monde et merci de m'aider
    Je souhaite générer une deuxième liste qui contient les noms des leçons du chapitre sélectionné dans la première liste.
    Voici le code de cette page :
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    <html>
    <head>
    <title>Document sans titre</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
     
    <body>
    <form name="chap" method="post" action="">
      <p> 
        <select name="select" id="c" size="1" >
          <option value="1">Chapitre 1 </option>
          <option value="2">Chapitre 2 </option>
          <option value="3">Chapitre 3 </option>
          <option value="4">Chapitre 4 </option>
          <option value="5">Chapitre 5 </option>
          <option value="6">Chapitre 6 </option>
        </select>
      </p>
     
      <select name="select2"  size="1">
        <?php
    $host="localhost";
    $user="root";
    $password="mysql";
    $base="projet";
    $connect=mysql_connect($host,$user,$password);
     
    if($connect==false)
    {die("la connexion a échoué");
    }
    $connectbase=mysql_select_db($base);
    if($connectbase==false)
    {echo("basse inaccessible");
    }
     
    $a=$_GET['select.c'];
    if ($a !=0) then
    {echo ("$a");
    }
    else
    { echo"failed";
    }
    $res=mysql_query("select * from chapitres,lesson where lesson.nc=$a and chapitres.numc=$a");
    if($res==false)
    {die("<br> requete incorrect");
    }
    else
    {echo("requete correcte");
    }
     
    if($res==false)
    {die("requete incorrect");
    }
    $nb=mysql_num_rows($res);
     
    for($i=0;$i < $nb;$i++)
    {$reg=mysql_fetch_array($res);
     
    echo "<option value=\"$a\>""."<br> Leçon".$reg["nl"]." :  ".$reg["noml"]."</option>";
    
    
    }
    ?>
      </select>
    </form>
    </body>
    </html>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour,

    Ton formulaire est en POST pas en GET et "select.c" ce n'est pas du php
    Utilise un while{} plutot qu'une boucle for bricolée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $nb=mysql_num_rows($res);
    for($i=0;$i < $nb;$i++)
    {$reg=mysql_fetch_array($res);
    ==>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while($reg=mysql_fetch_array($res)) {
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 28
    Par défaut
    MERCI pour votre attention,
    Je ne vous cache pas que j'ai une confusion entre les deux mais j'ai testé les deux est pas de résultats
    Leproblème est comment ou est ce qu'on peut récupérer la valeur sélectionner de la première select est l'envoyé à la requête sql pour quelle génére la deuxième liste déroulante.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je n'ai pas relu ton code dans le detail car il est un peu brouillon mais le principe est bon.
    Réécris le avec les corrections que je t'ai donné et on verra ce que ca donne.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 28
    Par défaut
    Je l'ai corrigé et testé mais la même chose
    Est ce qu'il y a un eerreur dans la liigne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<option value=\"$a"."\">"."<br> Leçon".$reg["nl"]." :  ".$reg["noml"]."</option>";

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je l'ai corrigé et testé mais la même chose
    C'est à dire ?
    Est ce qu'il y a un erreur dans la ligne
    Pour le savoir, regarde ton resultat html, tu verras s'il correspond a ce que tu veux produire.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 28
    Par défaut
    Voici le résultat dans la deuxième liste :
    ."Leçon".$reg["nl"]." : ".$reg["noml"]."

Discussions similaires

  1. Réponses: 7
    Dernier message: 10/01/2013, 16h39
  2. Réponses: 13
    Dernier message: 09/11/2011, 12h06
  3. [AC-2000] Récupérer la valeur d’une liste déroulante pour filtrer une requête SQL
    Par Gremandine dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 18/03/2010, 15h43
  4. Réponses: 5
    Dernier message: 17/07/2008, 09h18
  5. Réponses: 2
    Dernier message: 11/07/2007, 12h26

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