Percorrido arrays e coleções

Em nosso manual de ASP vimos várias estruturas de controle, uma delas ainda temos que ver em mais alguns exemplos. Trata-se da estrutura FOR…EACH que serve para percorrer todos os elementos de uma coleção, por exemplo, um array ou uma coleção como as variáveis do servidor. Para acabar, veremos um exemplo prático adicional que consiste no percorrido genérico das variáveis que recebemos por POST ou por GET.

FOR…EACH

O loop FOR…EACH utiliza-se com a seguinte sintaxe:

For Each elemento in coleção
‘Fazemos coisas para cada elemento da coleção
Next

Percorrido genérico de Arrays

Um exemplo para ver o funcionamento deste loop poderia ser o seguinte percorrido genérico de um array

<%
dim nomes(3)
nomes(1) = “pedro”
nomes(2) = “luis”
nomes(3) = “sabrina”
for each valor in nomes
response.write valor & “<br>”
next
%>

Percorre-se o array de nomes percorrendo cada valor e imprimindo-o.

Percorrido genérico de coleções

As coleções são como arrays com a diferença que se pode ser acessar o valor que salva o array em cada posição com uma cadeia de caracteres em vez de um número.

Um exemplo muito interessante de percorrido de coleções foi visto em seu momento para mostrar todas as variáveis do servidor, as ServerVariables.

<%
For Each elemento in Request.ServerVariables
Response.Write elemento&” : “&Request.ServerVariables(elemento)& “<br>”
Next
%>

Este exemplo é mais interessante, porque se trata de uma coleção e não um array típico. A coleção de ServerVaribles se acessa da seguinte maneira.

request.servervariables(“nome da variavel”)

onde “nome da variavel” poderia ser HTTP_ACCEPT_LANGUAGE, APPL_PHYSICAL_PATH ou qualquer outra variavel da lista de serverVariables.

Percorrido genérico das variáveis enviadas por POST ou GET

Outro exemplo interessante e prático é o que vem a seguir. Trata-se de percorrer as variáveis que chegam à página de um formulário ou pela URL de maneira genérica, ou seja, sem nos importar quantos elementos chegam e quais são. Este exemplo você pode chegar a necessitar quando não souber que tipo de formulário estão mandando nem quantas variáveis lhe enviam pela URL.

Em nosso exemplo vamos nos centrar em um formulário com method POST, com o qual recolhemos as variáveis com o método request.Form. Os exemplos para uma lista de variáveis chegada pela URL, com o método GET, podem-se recolher de um modo parecido, usando request.QueryString.

<%
For Each elemento in Request.form
Response.Write elemento & “: ” & Request.form(elemento) & “<br>”
Next
%>

É exatamente o mesmo exemplo que para percorrer uma coleção como a ServerVaribles, mas mostrando agora a coleção request.form.

Poderemos utilizar este script quando quisermos realizar percorridos genéricos. Nas seguintes linhas pode-se ver um exemplo de formulário que utilizamos para ilustrar este exemplo na prática.

<form action=”recorridoform.asp” method=”POST”>
Nome: <input type=”Text” name=”nome”>
<br>
<br>
Idade: <input type=”Text” name=”idade” size=3>
<br>
<br>
Profissao: <input type=”Text” name=”profissao”>
<br>
<br>
<input type=”Submit” value=”Enviar”>
</form>

Fonte: http://www.criarweb.com/artigos/424.php

Deixe um comentário