Designed by Gaetan !
30 en ligne   Boutique | Sites | Bar | Forum | PhpBB | Actu | Glossaire | Codes | Tips | Liens | Livres | Lettre  


 Recherche

 NewsLetter





   

Listes déroulantes (1/2)

En réponse à vos questions sur les <select> !





Didier
De nombreuses questions ont été posées à ce sujet alors, sans vouloir être exhaustif, quelques réponses... D'autres exemples simples figurent dans la rubrique "SELECT" du tutorial "Formulaires" !

Page 1  2  SUITE >> 
Rappels HTML

  1. La syntaxe de base pour faire apparaître une liste déroulante dans un formulaire est la suivante :
<form name="..." method="..." action="...">
   <select name="...">
      <option>...</option>
      <option>...</option>
      ...
      <option>...</option>
   </select><br>
   <input type="submit" value="OK">
</form>
Exemple -->

<form>
   <select name="liste">
      <option>Choix 1</option>
      <option>Choix 2</option>
      <option>Choix 3</option>
   </select><br>
   <input type="submit" value="OK">
</form>
  • La balise <select> admet quelques attributs dont :
    • MULTIPLE : pour des sélections multiples...
    • NAME : le nom du champ
    • SIZE : le nombre d'items visibles (par défaut 1)
    • DISABLED : pour empêcher la modification de la sélection

  • La balise <option> admet quelques attributs dont :
    • SELECTED : l'item sélectionné (par défaut le premier)
    • VALUE : la valeur à retourner (sinon c'est le texte de l'item)

    Vos questions

  • Comment construire une liste d'après les valeurs d'un champ d'une base de données ?


  • listederoul_1.asp 
    <%URL = _
       request.serverVariables("SCRIPT_NAME")%>

    <!-- #include file="_connexion.asp"-->

    <% ' au réaffichage, on récupère la sélection
    if request.form("liste") <> "" then
       ' traîtement éventuel,
       ' redirection, etc ...
    end if%>


    <%SQL="SELECT * FROM [MA_TABLE]"
    Set RS = server.createobject("ADODB.Recordset")
    RS.Open SQL,Conn , 3, 3%>

    <form name="myform" method="post"
      action="<%=URL%>">
       <select name="liste">
       <%while not RS.eof%>
          <option><%=RS("champ")%></option>
       <% RS.moveNext
       wend %>

       </select>
       <input type="Submit" value="Envoyer">
    </form>
    <% conn.close : Set conn=nothing %>
     


    listederoul_1.php 
    <? $URL = $PHP_SELF;
    include("_connexion.php"); ?>


    <? // au réaffichage, on récupère la sélection
    if($liste) {
       // traîtement éventuel,
       // redirection, etc ...
    } ?>


    <? $table="ma_table";
    $query = "SELECT * FROM $table"; 
    $result = mysql_query($query);
    ?>

    <form name="myform" method="post"
      action="<? echo $URL; ?>">
       <select name="liste">
       <? while ($val = mysql_fetch_array($result)) { ?>
          <option><? echo $val["champ"]; ?></option>
       <? } ?>
       </select>
       <input type="Submit" value="Envoyer">
    </form>
    <? mysql_close(); ?>


  • Comment réafficher la liste au même item que la sélection précédente ?
    Lors de la construction de la liste, on teste si l'item est égal au paramètre et si oui, on utilise SELECTED !
  • listederoul_2.asp 
    <%URL = _
       request.serverVariables("SCRIPT_NAME")%>

    <!-- #include file="_connexion.asp"-->

    <%SQL="SELECT * FROM [MA_TABLE]"
    Set RS = server.createobject("ADODB.Recordset")
    RS.Open SQL,Conn , 3, 3%>

    <form name="myform" method="post"
      action="<%=URL%>">
       <select name="liste">
       <%while not RS.eof%>
          <option
          <%if RS("champ") = request.form("liste") then%>
             SELECTED
          <%end if%>
          ><%=RS("champ")%></option>
       <% RS.moveNext
       wend %>

       </select>
       <input type="Submit" value="Envoyer">
    </form>
    <% conn.close : Set conn=nothing %>
     
    listederoul_2.php 
    <? $URL = $PHP_SELF;
    include("_connexion.php"); ?>


    <? $table="ma_table";
    $query = "SELECT * FROM $table"; 
    $result = mysql_query($query);
    ?>

    <form name="myform" method="post"
      action="<? echo $URL; ?>">
       <select name="liste">
       <? while ($val = mysql_fetch_array($result)) { ?>
          <option
          <? if($liste==$val["champ"]) { ?>
             SELECTED
          <? } ?>
          ><? echo $val["champ"]; ?></option>
       <? } ?>
       </select>
       <input type="Submit" value="Envoyer">
    </form>
    <? mysql_close(); ?>
    Page 1  2  SUITE >> 

    Pour pouvoir écrire dans ce forum, identifiez-vous !

     Lire  22/11/07 11:47 de anderlako
    comment on déclare les pages en php
  • 22/11/07 22:13 de Didier Précise un peu ta question qui ne veut r...
  •  Lire  17/07/03 10:20 de damienw
    Salut à tous ! J'ai pris l'exemple de la page 2 pour...
  • 17/07/03 11:21 de Ludo C'est des listes DEPENDANTES, car reliées e...
  • 17/07/03 11:43 de Didier Ca va faire un méchant paquet de données...
  • 17/07/03 11:51 de damienw > Ludo Oui oui dépendante, c'est ce ...
  • 17/07/03 11:55 de Aurelien jvé finir par faire une class qui tra...
  • 17/07/03 13:04 de Ludo Aller je te laisse faire, je vois bien que ...
  • 18/07/03 10:52 de damienw Je suis toujours encore prenant si que...
  • 18/07/03 10:57 de Aurelien J'imagine bien daminew :) Je verrais...
  • 18/07/03 11:51 de Aurelien bon alors finalement c fé :) Par con...
  • 18/07/03 12:51 de Didier Excellent, bravo !!!
  •   v1.3p © ASP-PHP.net 2002  

    Didier le 08/05/2003 (273 716 hits)
    Didier Gratuit : Téléchargez 7 logiciels Microsoft !!!
    du 29/09 au 05/11 les MS Days gratuits dans votre ville !!!
    Gratuit : Téléchargez SQL Server 2008 !
    Au fil des news  
    [MAJ] Inscription contrôlée à une NewsLetter ou Service - Abonnement avec confirmation et désabonnement
    Correction d'un point-virgule manquant (merci de m'avoir obligé à chercher JPierre) dans le module ...
    [MAJ] PHP - Administrer en ligne - Protection des pages
    Ajout d'un code de validation généré aléatoirement.
    PHP - Premier lundi d'une semaine et d'une année
    JavaScript - Premier lundi d'une semaine et d'une année
    ASP - Premier lundi d'une semaine et d'une année
    Alphabet Radio et Code Morse - Alpha Zulu appelle Tango Charlie !
    Encoder-Décoder en "Alphabet Radio" ... "Alpha Zulu appelle Tango Charlie !" ou en Code Morse ... ...
    Filtrer les modèles de site SharePoint - Filtrer l'affichage des modèles de site SharePoint
    Je vous propose de découvrir à l'aide de cet article quels mécanismes peuvent vous permettent de ...
    ASP/PHP - Crypter/Décrypter - par table de correspondance
    (ASP/PHP) Une méthode pour crypter/décrypter des données par l'utilisation d'une table de ...
    PHP - Listes liées (1 table) - version2
    JavaScript - Rendre Visible ou Invisible des éléments d'un form
    PHP - Listes liées (1 table) - version1
    JavaScript - Intercepter le click sur vidéo WMP ou flash SWF
    [MAJ] Une base de données sans base de données - Comment travailler avec des fichiers texte ?
    Modification du paramétrage du dossier à scanner dans le popup qui permet de sélectionner l'image.
    Jeux de l'été (et de 5) - Un jeu de Motus (mots de 8 lettres)
    C'est reparti pour un tour... Comme je venais de proposer un jeu de Mastermind, je me suis dit que, ...
    PowerShell - Extraire toutes les collections SharePoint en CSV
    PowerShell - Lister les collections pour une WebApp SharePoint
    PowerShell - Lister les utilisateurs d'un site SharePoint
    PowerShell - Connaître le code version de votre SharePoint
    Connaître la version de SharePoint installée - Comment savoir la version de SharePoint en cours
    Dans le cadre de la maintenance de plusieurs fermes SharePoint, il est indispensable de connaître ...
    PowerShell - Travailler avec une base de données SQL Server
    .NET - Visual Studio 2008 sur Facebook : çà rock's
    PowerShell - Ajouter des liens sur deux niveaux dans SharePoint
    Un petit annuaire perso avec photo - en PHP et MySQL
    Avoir des copains et des amis c'est bien que dis-je c'est même vital pour le bien être de chacun. ...
    Une base de données sans base de données - Comment travailler avec des fichiers texte ?
    Suite à une question sur le forum (les habitués me connaissent), je propose une mini-gestion de ...
    ASP/PHP : Affichage de données en tableau html - Afficher proprement des données dans un tableau
    Création d'un tableau "à la volée" pour afficher ses données. Affichage "en ligne" ou "en ...
    PowerShell - Ajouter une liste dans un site SharePoint
    Annuaire d'entreprise en PHP - Très pratique pour ne plus rien perdre
    Mon petit annuaire d'entreprise, je m'en sers tous les jours alors autant vous en faire profiter. ...
    PHP-MySQL : Formulaire - pour le script 'Bon anniversaire' de DB77
    Formulaire et script d'enregistrement pour le script « Bon anniversaire » de DB77 en PHP/MySQL ...
    .NET - Introducing Microsoft Silverlight 2.0, 2nd Edition
    PHP5 - Upload de fichiers - Classe PHP
    PHP - PHP 5 /MYSQL® 5
    PHP - Calcul de la surface d'un polygone
    Comment supprimer des items d'une liste SharePoint - Supprimer les informations d'une liste SharePoint
    SharePoint permet bien sur de stocker des données. Parfois, on peut vouloir effacer certaines de ...
    Dreamweaver CS4 - Nouvelle version Béta
    Voici la nouvelle mouture, annoncée en juin, juste 6 mois après la sortie de la version CS3. Je ...
    PowerShell - Synchronisation répertoire par répertoire
    PowerShell - Ajouter des items dans une liste SharePoint
    Localisation des développements avec SharePoint - Rendre ses applications SharePoint internationales
    Lorsque l'on développe des applications avec SharePoint, on se confronte très souvent à une ...
    PowerShell - Supprimer tous les items d'une liste SharePoint
    PowerShell - Vider la Corbeille SharePoint d'une collection
    Modification de l'adresse du Search Center - Définir la page de résultat d'une ferme MOSS
    Lorsque l'on installe MOSS dans une ferme SharePoint et que l'on configure le moteur de recherche ...
    Tutorial : HTML | Scripting | ASP-PHP | ASP.net | SQL Server | XML
    Sharepoint | XAML | Pocket | Dreamweaver | VML | Divers
      Scripts : Scripting | ASP-PHP | ASP.net | Divers
      Boutique | Annuaire | Bannières | Météo | Tribune | Partenariats
    v3 © Didier 2003   
     

    Corpo Sciences de Reims Partitions gratuites Carte, météo, annonces
     Groupes Utilisateurs Microsoft The Inquirer FR DotNet Project MVP ASP-magazine Wygwam El Roubio Codes Sources TechNet CodePPC