The manual Page
Version française
   
index | glossary | news | downloads | links ]
  introduction à ASP
écrire en ASP
le fichier global.asa
les variables
les objets ASP 3.0
l'objet Request
   .BinaryRead
   .ClientCertificate
   .Cookies
   .Form
   .QueryString
   .ServerVariables
l'objet Response
l'objet ObjectContext
l'objet Application
l'objet Session
l'objet Server
l'objet ASPError
 
news
glossary
links
downloads
 
credits
contact
 
 
search
 
last update
19/02/2003
Valid HTML 4.0!
Valid CSS!
Hit-Parade
Mesurez votre audience


  Collection Request.QueryString

Synopsis

Request.QueryString(Variable)[(Index)|.Count]

Lecture seule

Cette collection est utilisée pour manipuler la chaîne de requête ("query string" en anglais) que le client envoie au serveur pour faire sa requête. La query string est la partie de l'URL qui suit le point d'interrogation. Par exemple, dans l'URL http://www.monserveur.com/page.asp?var1=toto&var2=titi, la chaîne de requête est var1=toto&var2=titi.

Cette collection est très utile pour les formulaires que l'on a envoyés au serveur par la méthode GET, ou pour transmettre simplement une variable d'une page à une autre.

Request.QueryString fonctionne de la même façon que Request.Form : Variable est le seul paramètre obligatoire, Index et Count étant optionnels.

Utilisation de la collection

Récupérer les variables

Pour récupèrer les variables passées dans l'URL ou les données d'un formulaire envoyé par la méthode GET, on utilise tout simplement leur nom :

Si l'URL est http://www.monserveur.com/page.asp?var1=toto&var2=titi, la collection Request.QueryString contiendra les éléments Request.QueryString("var1") (qui vaut "toto"), et l'élément Request.QueryString("var2") (qui vaut "titi").

Une telle URL peut être construite avec le formulaire suivant :

<FORM action="formulaire.asp" method="get">
	<INPUT type="text" name="var1" value="toto">
	<INPUT type="text" name="var2" value="titi">
	<INPUT type="submit" value="envoyer">
</FORM>

En VBScript, comme toutes les collections, il est possible de parcourir Request.QueryString avec une boucle For Each ... Next :

For Each element In Request.QueryString
	Response.Write(element & " = " & Request.QueryString(element))
Next

Les variables à valeurs multiples

De telles variables se rencontrent lorsqu'on utilise des listes à choix multiple ou des zones de cases à cocher dans des formulaires (en fait, dè l'instant où plusieurs éléments du formulaire portent le même nom). On manipule ces variables avec cette collection de la même façon qu'avec la collection Request.Form. Index est un indice allant de 1 à Request.QueryString(...).Count :

Formulaire initiale :

<FORM action="formulaire.asp" method="get">
	<SELECT name="liste" size="10" multiple>
		<OPTION value="element_1">element 1</OPTION>
		<OPTION value="element_2">element 2</OPTION>
		...
	</SELECT>
	<INPUT type="submit" value="OK">
</FORM>

ou :

<FORM action="formulaire.asp" method="get">
	<INPUT type="checkbox" name="liste" value="element_1"> element 1<BR>
	<INPUT type="checkbox" name="liste" value="element_2"> element 2<BR>
	...
	<INPUT type="submit" value="OK">
</FORM>

formulaire.asp :

<%
Response.Write(Request.QueryString("liste").Count & " elements :<BR>")
For i = 1 To Request.QueryString("liste").Count
	Response.Write(Request.QueryString("liste")(i) & "<BR>")
Next
%>

Ce qui donne, si on a sélectionné ou coché les éléments 1, 5 et 13 :

3 elements :
element_1
element_5
element_13

L'URL qui a été envoyée au serveur est :

formulaire.asp?liste=element_1&liste=element_5&liste=element_13

On peut enfin noter que l'on peut directement récupérer la chaîne de requête en appelant directement Request.QueryString :

Response.Write(Request.QueryString) donne par exemple var1=toto&var2=titi

Warning: main(../include/imprimable.php) [function.main]: failed to open stream: No such file or directory in /homez.13/themanua/www2/asp/asp_request_querystring.php3 on line 155

Warning: main() [function.include]: Failed opening '../include/imprimable.php' for inclusion (include_path='.:/usr/local/lib/php') in /homez.13/themanua/www2/asp/asp_request_querystring.php3 on line 155


Copyright © 2000-2002 themanualpage.org - This site is submissive to the terms of the GNU GPL and FDL licences.