ASP formulær og brugerinput

Request.QueryString og Request.Form-kommandoerne kan bruges til at hente information fra formularen, såsom brugerinput.

Eksempel:

Formular med method="get"
Sådan bruges Request.QueryString-kommandoen til at interagere med brugeren.
Formular med method="post"
Sådan bruges Request.Form-kommandoen til at interagere med brugeren.
Formular med radioknapper
Sådan bruges Request.Form til at interagere med brugeren gennem radioknapper.

Brugerinput

Request-objektet kan bruges til at hente brugeroplysninger fra formularen.

HTML-formular eksempel

<form method="get" action="simpleform.asp">
<p>Fornavn: <input type="text" name="fname" /></p>
<p>Afternavn: <input type="text" name="lname" /></p>
<input type="submit" value="Submit" />
</form>

Brugerinput kan indhentes på to måder: Request.QueryString eller Request.Form.

Request.QueryString

Request.QueryString-kommandoen bruges til at indsamle værdier fra formularer, der bruger method="get". Informationer, der sendes fra formularen ved hjælp af GET-metoden, er synlige for alle brugere (vises i browserens adressefelt) og har en begrænsning på mængden af informationer, der sendes.

HTML-formular eksempel

<form method="get" action="simpleform.asp">
<p>Fornavn: <input type="text" name="fname" /></p>
<p>Afternavn: <input type="text" name="lname" /></p>
<input type="submit" value="Submit" />
</form>

Hvis brugeren indtaster "Bill" og "Gates" i ovenstående formularampeksempel, vil URL'en sendt til serveren se sådan ud:

http://www.codew3c.com/simpleform.asp?fname=Bill&lname=Gates

Antag at ASP-filen "simpleform.asp" indeholder følgende kode:

<body>
Velkommen
<%
response.write(request.querystring("fname"))
response.write(" " & request.querystring("lname"))
%>
</body>

Browseren vil vise følgende:

Velkommen Bill Gates

Request.Form

Request.Form-kommandoen bruges til at indsamle værdier fra formularer, der bruger "post"-metoden. Informationer, der sendes fra formularen ved hjælp af POST-metoden, er ikke synlige for brugeren og har ingen begrænsning på mængden af informationer, der sendes.

HTML-formular eksempel

<form method="post" action="simpleform.asp">
<p>Fornavn: <input type="text" name="fname" /></p>
<p>Afternavn: <input type="text" name="lname" /></p>
<input type="submit" value="Submit" />
</form>

Hvis brugeren indtaster "Bill" og "Gates" i ovenstående formularampeksempel, vil URL'en sendt til serveren se sådan ud:

http://www.codew3c.com/simpleform.asp

Antag at ASP-filen "simpleform.asp" indeholder følgende kode:

<body>
Velkommen
<%
response.write(request.form("fname"))
response.write(" " & request.form("lname"))
%>
</body>

Browseren vil vise følgende:

Velkommen Bill Gates

Formularvalidering

Altid skal brugerinput data verificeres, hvis muligt (gennem klientens script). Browserens validering er hurtigere og kan reducere serverens belastning.

Hvis brugerdata skal indtastes i databasen, bør du overveje at bruge server-side validering. En god måde at validere et formulær på serveren er at sende (validerede) formularen tilbage til formulærsideen, i stedet for at gå til en anden side. Brugeren kan derefter få fejlmeddelelser på samme side. På denne måde bliver det lettere for brugeren at opdage fejl.