Le traitement facilité des formulaires sous ASP |
Des variables ASP (presque) comme en PHP |
|
|
| Avant propos | | J'ai travaillé pas mal de temps avec ASP et depuis peu redécouvre le PHP.
Certaines facilités sont offertes dans l'un et pas toujours dans l'autre langage. |
|
|
|
Vous créez un formulaire
Exemple :
<!-- action="display.asp" pour l'ASP--> <!-- method="post" ou "get" suivant les besoin--> <form action="display.php" method="post"> Nom:<input type="text" name="mon_nom"><br> Prénom:<input type="text" name="mon_prenom"><br> J'aime les chiens <input type="checkbox" name="animal[]" value="chien"><br> J'aime les chats <input type="checkbox" name="animal[]" value="chat"><br> <input type="submit"> </form>
|
 |  |
Pour récupérer le contenu des différents éléments de votre form il vous suffit de récupérer la variable $... du même nom.
Dans la page display.php vous pouvez utiliser le contenu de cette manière:
|
Dans une page ASP c'est un peu plus compliqué, mais lors de mes développement j'utilise souvent une routine (include) qui me permet de faire une chose identique.
dans display.asp:
|
");
print("mon prénom:".$mon_prenom." ");
....
?>
|
<%
response.write("mon nom:"&mon_nom&" ")
response.write("mon prénom:"&mon_prenom&" ")
for n = 0 to ubound(animal)
response.write("J'aime les "&animal(n)&" ")
next
%>
|
dans translate_form.asp :
Je crée pour chaque élément une variable avec le même nom et on lui attribue le contenu de manière automatique.
J'y ajoute également le remplacement de " par des ´´ afin d'éviter les erreurs d'interprétation dans la commande execute
Supprime les < et > si besoin (ou les remplace).
J'y traite également les variables avec la syntaxe nom_de_variable[] pour les transformer en tableau Dim().
<%
'****************************************
'** translate form inputs to variables **
'****************************************
'**** for get method ****
'****************************************
for each n_in in request.querystring
z_content=request.item(n_in) 'on recupére le contenu
z_content=replace(z_content,chr(34),"´´") 'on replace " par ´´
z_content=replace(z_content,"<","") 'on supprime les <
z_content=replace(z_content,">","") 'on supprime les >
if right(n_in,2)="[]" then 'si le nom se termine par []
' on ´split´les valeurs dans une variable Dim()
z=mid(n_in,1,len(n_in)-2)&"=split(z_content,"&chr(34)&","&chr(34)&")"
else
' sinon on attribue simplement la valeur
z=n_in+"="""+z_content+""""
end if
'on execute la ligne de commande ASP ainsi crée
execute z
next
'****************************************
'**** for post method ****
'****************************************
for each n_in in request.form
z_content=request.item(n_in)
z_content=replace(z_content,chr(34),"´´")
z_content=replace(z_content,"<","")
z_content=replace(z_content,">","")
z=n_in+"="""+z_content+""""
if right(n_in,2)="[]" then
z=mid(n_in,1,len(n_in)-2)&"=split(z_content,"&chr(34)&","&chr(34)&")"
else
z=n_in+"="""+z_content+""""
end if
execute z
next
'****************************************
%>
De cette manière on obtient pour chaques valeurs du formulaire une variable du même nom.
baras le
12/03/2003 (43 107 hits) |
|
|