'ASP s'impatientait dans son coin..à son tour de nous construire
la liste déroulante. Je reviendrai plus tard sur les radio-boutons. .
Dans la
balise forme nous indiquons toujours l'URL qui va réceptionner les données,
l'extension doit être .asp:
<form action="monScript.asp"
method=post>.
De façon
identique, tous les contrôles ayant un nom sont transmis : les zones de
saisie, les cases à cocher, les radio-boutons, les boutons 'submit, les
champs cachés...
Nous allons
développer l'exemple de la récupération du choix de l'utilisateur
sur la liste déroulante de nos départements. Pour cela nous consruisons
une page populate.asp qui construit la liste déroulante mise à disposition
de l'utilisateur.
Le code
VBScript s'écrit comme cela ( le _ indique la continuation de la ligne
de code) :
<%@
Language=VBScript %>
<%
' Chaîne de la requête SQL
Sql="SELECT numDep, nomDep FROM codeDepartement _ ORDER BY numDep ASC"
' Déclaration et ouverture de la connexion
SET myConnx = Server.CreateObject("ADODB.Connection")_
myConnx.OPEN "DSN=codeDep"
' Déclaration
et ouverture du curseur
Set myRs = Server.CreateObject("ADODB.Recordset")
myRs.Open Sql, myConnx
' Initialisation de la liste déroulante
ld = "<SELECT NAME='lstDep'>"
ld = ld & "<OPTION VALUE='0' _ selected>Choisissez</OPTION>"
do while not myRs.eof
numDep = myRs("numDep")
nomDep = myRs("nomDep")
ld = ld & "<OPTION VALUE='" & numDep
& "'>" & _ nomDep & "</OPTION>"
myRs.MoveNext
loop
myRs.Close
set myRs = Nothing
myConnx.Close
set myConnx = Nothing
ld = ld & "</SELECT>"
%>
Je ne détaille
pas plus ce code car on y retrouve la même cinématique de traitement.
La déclaration de la base à laquelle on accède par un objet
ADO - cette base Access a été déclaré dans le système
ODBC -, puis l'ouverture etc...
Essayons
ce script simple :
<FORM
ACTION="resultat.asp" METHOD=POST>
' On écrit la valeur de ld c'est à dire la liste déroulante.
<% Response.Write ld %>
<INPUT TYPE="submit" NAME="btnEnvoyer" _ VALUE="envoyer">
</FORM>
décrivons
notre page 'resultat.asp':
<BODY>
... ...
Votre choix est <% Response.Write Request("lstDep")
%>
...
</BODY>
Ce code
ASP embarqué affiche le numéro de département choisi, car
nous avons stocké ce numérao dans l'attribut VALUE de la balise
<OPTION>.
<< Lire
la 2ème partie
Daniel
Lucazeau
Ajornet.com
Chef de projet Internet
Développeur informatique
Tous
droits réservés - Reproduction même partielle interdite sans
autorisation préalable
|