Formulários e Entrada de Usuário ASP

Os comandos Request.QueryString e Request.Form podem ser usados para recuperar informações do formulário, como a entrada do usuário.

Exemplo:

Formulário com method="get"
Como usar o comando Request.QueryString para interagir com o usuário.
Formulário com method="post"
Como usar o comando Request.Form para interagir com o usuário.
Formulário com botões de opção
Como usar Request.Form para interagir com o usuário através de botões de opção.

Entrada do usuário

O objeto Request pode ser usado para recuperar informações do usuário do formulário.

Exemplo de formulário HTML

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

As informações de entrada do usuário podem ser recuperadas de duas maneiras: Request.QueryString ou Request.Form.

Request.QueryString

O comando Request.QueryString é usado para coletar os valores de um formulário que usa method="get". As informações enviadas do formulário usando o método GET são visíveis para todos os usuários (aparecem na barra de endereços do navegador) e há limites para a quantidade de informações enviadas.

Exemplo de formulário HTML

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

Se o usuário inserir "Bill" e "Gates" no exemplo de formulário acima, o URL enviado ao servidor será semelhante a este:

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

Supondo que o arquivo ASP "simpleform.asp" contenha o seguinte código:

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

O navegador exibirá o seguinte:

Bem-vindo Bill Gates

Request.Form

O comando Request.Form é usado para coletar os valores de um formulário que usa o método "post". As informações enviadas do formulário usando o método POST são invisíveis para o usuário e não há limites para a quantidade de informações enviadas.

Exemplo de formulário HTML

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

Se o usuário inserir "Bill" e "Gates" no exemplo de formulário acima, o URL enviado ao servidor será semelhante a este:

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

Supondo que o arquivo ASP "simpleform.asp" contenha o seguinte código:

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

O navegador exibirá o seguinte:

Bem-vindo Bill Gates

Validação de formulário

Se possível, deve-se sempre validar os dados de entrada do usuário (através de scripts do cliente). A validação no lado do navegador é mais rápida e pode reduzir a carga do servidor.

Se os dados do usuário serão inseridos no banco de dados, você deve considerar usar a validação no lado do servidor. Uma boa maneira de validar o formulário no lado do servidor é enviar o formulário (validado) de volta para a página do formulário, em vez de redirecionar para uma página diferente. O usuário então pode obter as informações de erro na mesma página. Dessa forma, o usuário pode descobrir mais facilmente os erros.