Forum


 

As condições if then else em ASP ( parte I )

A programação exige em muitas ocasiões a repetição de acções sucessivas ou a escolha de uma determinada sequê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 sequência diferente em função do dia da semana no qual nos encontramos.

Este tipo de acçã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 correctamente 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 o dia e a hora e informa se é de manhã, tarde ou noite.

<%@LANGUAGE="VBSCRIPT"%>
<html>
<head>
<title>Olá, Viva !...</title>
</head>
<%
DIM Moment
If DatePart("h",Time()) < 12 Then
Moment = "manhã"
ElseIf DatePart("h",Time()) < 18 Then
Moment = "tarde"
Else
Moment = "noite"
End If
%>
<body bgcolor="#ffffff">
<p>Olá, Viva !...</p>
<p>Estamos no dia <%= Date() %></p>
<p>e são exactamente <%= Time() %>, da <%= Moment %>.</p>
</body>
</html>

teste este script


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 objecto 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 verificar erros ou introduzir modificações. É altamente aconselhável acostumar-se a utilizá-los.