Algumas das formas mais correntes de controlar o fluxo dos programas em VBScript: Condição IFPor Rubén Alvarez
Publicado em: 29/11/04
A programação exige em muitas ocasiões a repetição de ações sucessivas ou a escolha de uma determinada seqüência e não de outra dependendo das condições específicas da execução.
Como exemplo, poderíamos fazer alusão a um script que execute uma seqüência diferente em função do dia da semana no qual nos encontramos.
Este tipo de ação pode ser realizado graças a uma paleta de instruções presentes na maioria das linguagens. Neste capítulo descreveremos sumariamente algumas delas propostas pelo VBS e que são de evidente utilidade para o desenvolvimento de páginas ASP.
Para evitar complicar o texto, nos limitaremos a introduzir as mais importantes deixando de lado outras tantas que poderão ser facilmente assimiladas a partir de exemplos práticos.
As condições: IF
Quando quisermos que o programa, chegado a um certo ponto, tome um caminho determinado em determinados casos e outro diferente se as condições de execução diferem, nos servimos do conjunto de instruções If, Then e Else. A estrutura de base deste tipo de instruções é a seguinte:
IF condição THEN
Instrução 1
Instrução 2
...
ELSE
Instrução A
Instrução B
...
END IF
Chegado a este ponto, o programa verificará o cumprimento ou não da condição. Se a condição é certa as instruções 1 e 2 serão executadas. Do contrário (Else), as instruções A e B serão realizadas.
Uma vez finalizada a estrutura, deveremos fechar com um End If.
Esta estrutura de base pode complicar-se um pouco mais, se temos em conta que não necessariamente tudo é branco ou negro e que muitas possibilidades podem se dar. É por isso que outras condições podem se colocar dentro da condição principal. Falamos, portanto, de condições aninhadas que teriam uma estrutura do seguinte tipo:
IF condição THEN
Instrução 1
Instrução 2
...
ELSE
IF condição2 THEN
Instrução A
Instrução B
...
ELSE
Instrução X
...
END IF
END IF
Deste modo poderíamos introduzir tantas condições quantas quisermos dentro de uma condição principal. Neste tipo de estruturas é importante fechar corretamente cada um dos IF com seus END IF correspondentes. De grande ajuda é a instrução ELSE IF que permite em uma só linha e sem necessidade de acrescentar um END IF introduzir uma condição aninhada.
O uso desta ferramenta será claro com um pouco de prática. Colocamos um exemplo simples de utilização de condições. O seguinte programa permitiria detectar a língua empregada pelo navegador e visualizar uma mensagem em tal língua.
<% @ LANGUAGE="VBSCRIPT" %>
<HTML>
<HEAD>
<TITLE>Detector de Língua</TITLE>
</HEAD>
<BODY>
<%
'Antes de nada introduzimos mensagens em forma de variáveis
espanhol="Hola"
ingles="Hello"
portugues="Olá"
'Agora lemos do navegador qual é a sua língua oficial
idioma=Left(Request.ServerVariables("HTTP_ACCEPT_LANGUAGE"),2)
'Formulamos as possibilidades que podem dar
If idioma="es" Then
Response.Write espanhol
ElseIf idioma="pt" Then
Response.Write portugues
Else
Response.Write ingles
End If %>
</BODY>
</HTML> |
Para poder ver o funcionamento deste script é necessário mudar o idioma preferido o qual pode ser realizado a partir do menu de opções do navegador.
Como pode ser visto, as variáveis que contém texto são armazenadas entre aspas.
Para ler a língua aceitada pelo navegador o que fazemos é definir uma variável (idioma) que recorre as duas primeiras letras começando da esquerda do idioma aceitado pelo navegador ("HTTP_ACCEPT_LANGUAGE"). Este idioma aceitado pode ser requerido como uma variável do objeto ServerVariables. Por agora deixaremos isto tal como está, e já nos encarregaremos de vê-lo mais detalhadamente em outros capítulos.
A terceira de script se encarrega de ver se o navegador está em português (pt), espanhol (es), ou em qualquer outro idioma que não seja nenhum destes dois, e imprimir cada uma das mensagens que proceda em cada caso.
Outro ponto a comentar é o fato de poder comentar os programas. Como se pode observar, dentro do script introduzimos umas mensagens que nos serve para lê-las mais facilmente. Estas mensagens não exercem nenhuma influência no desenvolvimento do mesmo. Para introduzi-las é necessário escreve-las detrás de uma apóstrofe: '
Os comentários são de grande utilidade quando tratamos com programas muito extensos e complicados.Nestes casos, são de grande ajuda na hora de depurar falhos ou introduzir modificações. É altamente aconselhável acostumar-se a utilizá-los.