Taller: Construcción de Páginas con Contenido Dinámico

VBScript

Atrás Principal Adelante

Sesión 3.

Visual Basic Script. Tipos de Datos. Operadores. Estructuras y Funciones. El objeto Request (cont.)

1.- Tipo de Datos.

Byte (Byte)
Entero (Integer)
Entero Largo (Long)
Real (Single)
Real Largo (Double)
Fecha (Date)
Cadena (String)
Lógico (Boolean)
Arreglo (Array)

Los variables dentro del codigo ASP se pueden declarar utilizando la intrucción Dim de la manera siguiente:

<% Dim cadena %>

El tipo de Variable es establecido por su valor, para saber el tipo de una Variable se utiliza la función TypeName de la manera siguiente:

<% eltipo = typename(variable) %>

La variable "eltipo" recibira el tipo de dato contenido en "variable", por ejemplo "string".

2.- Operadores en VBS

Operadores Lógicos:
And (Y)
Or (ó)
Not (Negación)
Operadores Aritméticos
+ (Suma)
-  (Resta)
* (Multiplicación)
/ (División)
\ (División entera)
^ (Exponenciación)
mod (modulo de la división)
Operadores de Comparación:
< (menor que)
> (mayor que)
<= (menor o igual que)
>= (mayor o igual que)
= (igual a)
<> (diferente de)
Operadores de cadena
& (concatenación)

3. Estructuras de decisión:

if ... then ... else

Sintaxis:

if (condición) then

    (instrucciones)

else

    (intrucciones)

end if

if ... then ... elseif ...

Sintaxis:

if (condición) then   (instrucciones)

elseif (condición) then

(instrucciones)

endif

en (condición) se pueden utilizar los operadores lógicos y de comparación, por ejemplo:

    if not(a) then ...

    if (a>0) and (a>5) then

4. Estructuras de Repetición.

For ... Next (repita para)

Sintaxis:

For var=valor_inicial to valor_final

    (instrucciones)

Next

For each ... Next (repita para cada)

Repite el bloque de instrucciones para cada elemento de la colección o matriz

Sintaxis:

for each "elemento" in "colección"

    (intrucciones)

next

Ejemplo:

for each elem in Request.form

    response.write elem

next

Do until  ... Loop (repita hasta)

Sintaxis:

Do until "condición"

    (instrucciones)

Loop

Do while ... Loop (repita mientras)

Sintaxis:

Do While "condición"

    (instrucciones)

Loop

5. Algunas funciones utiles:

Funciones de Conversión
Cint (a entero)
Cstr (a cadena)
Cdate (a fecha)
Clng (a entero largo)
CDbl (a real largo)
CByte (a byte)

Todas las funciones tienen la mismas sintaxis:

a= funcion(b),  por ejemplo:

a=Cint(b)

Funciones de Cadena
LCase (Convierte a minúsculas)

a=LCase(cadena)

UCase (Convierte a Mayúsculas)

a=UCase(cadena)

Len (Devuelve el tamaño de la cadena)

n=Len(cadena)

Mid (Devuelve parte de la cadena)

a=Mid(cadena,inicio,tamaño);

a=Mid(cadena,2,4) -> extrae de cadena los 4 caracteres siguiente a partir de la posición 2

6.- La colección ServerVariable del Objeto Request.

La colección ServerVariables recupera los valores de las variables de entorno predeterminadas.

Se utiliza para poder utilizar ciertos valores que envia el cliente al servidor, por ejemplo el tipo de navegador que utiliza, por ejemplo:

<% nav = Request.ServerVariable("HTTP_USER_AGENT") %>

La Tabla siguiente enumera las variable comunes a todos los servidores HTTPD:

Variable Descripción
ALL_HTTP Todos los encabezados HTTP enviados por el cliente.
ALL_RAW Obtiene todos los encabezados de un formulario. La diferencia entre ALL_RAW y ALL_HTTP es que ALL_HTTP pone un prefijo HTTP_ delante del nombre del encabezado y que el nombre del encabezado va siempre en mayúsculas. En ALL_RAW el nombre del encabezado y los valores aparecen tal y como los envió el cliente.
APPL_MD_PATH Recupera la ruta de acceso de la metabase para la Aplicación (WAM) para DLL ISAPI.
APPL_PHYSICAL_PATH Recupera la ruta física correspondiente a la ruta de la metabase. IIS convierte APPL_MD_PATH a la ruta física (directorio) al devolver este valor.
AUTH_PASSWORD El valor especificado en el cuadro de diálogo de autenticación del cliente. Esta variable sólo está disponible si se utiliza la autenticación Básica.
AUTH_TYPE El método de autenticación que el servidor utiliza para validar a los usuarios cuando intentan tener acceso a una secuencia de comandos protegida.
AUTH_USER Nombre de usuario autenticado.
CERT_COOKIE Id. único del certificado de cliente, devuelto como una cadena. Se puede utilizar como firma para todo el certificado de cliente.
CERT_FLAGS bit0 es 1 si el certificado de cliente está presente.

bit1 es 1 si la entidad emisora del certificado de cliente no es válida (no está en la lista de CA reconocidas del servidor).

CERT_ISSUER Campo del emisor del certificado de cliente (O=MS, OU=IAS, CN=nombre de usuario, C=USA).
CERT_KEYSIZE Número de bits de la clave de conexión de Secure Sockets Layer. Por ejemplo, 128
CERT_SECRETKEYSIZE Número de bits de la clave privada del certificado de servidor. Por ejemplo, 1024.
CERT_SERIALNUMBER Campo de número de serie del certificado de cliente.
CERT_SERVER_ISSUER Campo de emisor del certificado de servidor.
CERT_SERVER_SUBJECT Campo de asunto del certificado de servidor.
CERT_SUBJECT Campo de asunto del certificado de cliente.
CONTENT_LENGTH La longitud del contenido dada por el cliente.
CONTENT_TYPE El tipo de datos del contenido. Se utiliza en las consultas que tengan información adjunta, como las peticiones HTTP GET, POST y PUT.
GATEWAY_INTERFACE La revisión de la especificación CGI utilizada por el servidor. El formato es CGI/revisión.
HTTP_<NombreEncabezado> El valor almacenado en el encabezado NombreEncabezado. Cualquier otro encabezado distinto de los enumerados en esta tabla debe llevar el prefijo HTTP_ para que la colección ServerVariables recupere su valor.

Nota El servidor interpreta los caracteres de subrayado (_) de NombreEncabezado como guiones en el encabezado real. Por ejemplo si especifica HTTP_MI_ENCABEZADO, el servidor busca un encabezado enviado como MI-ENCABEZADO.

HTTPS Devuelve ON si la petición llegó por un canal de seguridad (SSL) o devuelve OFF si la petición llegó por un canal no protegido.
HTTPS_KEYSIZE Número de bits de la clave de conexión de Secure Sockets Layer. Por ejemplo, 128.
HTTPS_SECRETKEYSIZE Número de bits de la clave privada del certificado de servidor. Por ejemplo, 1024.
HTTPS_SERVER_ISSUER Campo de emisor del certificado de servidor.
HTTPS_SERVER_SUBJECT Campo de asunto del certificado de servidor.
INSTANCE_ID El Id. de la instancia de IIS en formato de texto. Si el Id. de la instancia es 1, aparece como un cadena. Puede utilizar esta variable para recuperar el Id. de la instancia del servidor Web (en la metabase) al que pertenece la petición.
INSTANCE_META_PATH La ruta de la metabase para la instancia de IIS que responde a la petición.
LOCAL_ADDR Devuelve la dirección del servidor por la que llegó la petición. Esto es importante en las máquinas multitarjeta que pueden tener varias direcciones IP y si desea saber la dirección utilizada por la petición.
LOGON_USER La cuenta de Windows NT(r) con la que el usuario ha iniciado la sesión.
PATH_INFO Información adicional de la ruta dada por el cliente. Puede tener acceso a secuencias de comandos mediante su ruta virtual y la variable del servidor PATH_INFO. Si esta información proviene de una dirección URL, el servidor la decodificada antes de pasarla a la secuencia de comandos CGI.
PATH_TRANSLATED La versión traducida de PATH_INFO que recibe la ruta de acceso y realiza las asignaciones necesarias de virtual a físico.
QUERY_STRING Información de consulta almacenada en la cadena que sigue al signo de interrogación (?) en la petición HTTP.
REMOTE_ADDR La dirección IP del host remoto que hace la petición.
REMOTE_HOST El nombre del host que hace la petición. Si el servidor no tiene esta información, establecerá REMOTE_ADDR y dejará esta variable vacía.
REMOTE_USER Cadena con el nombre del usuario sin asignar enviada por el usuario. Es el nombre que realmente envía el usuario, no los ya modificados por los filtros de autenticación instalados en el servidor.
REQUEST_METHOD El método que se utiliza para hacer la petición. En HTTP, son GET, HEAD, POST, etc.
SCRIPT_NAME La ruta virtual a la secuencia de comandos que se está ejecutando. Se utiliza en las direcciones URL que hacen referencia a sí mismas.
SERVER_NAME El nombre de host del servidor, el alias DNS o la dirección IP tal como aparecería en las direcciones URL que hacen referencia a sí mismas.
SERVER_PORT El número de puerto al que se envió la petición.
SERVER_PORT_SECURE Una cadena que contiene 0 ó 1. Si la petición se va a administrar a través de un puerto de seguridad, contendrá 1. De lo contrario, será 0.
SERVER_PROTOCOL El nombre y la revisión del protocolo de información de la petición. El formato es protocolo/revisión.
SERVER_SOFTWARE El nombre y la versión del software de servidor que responde a la petición y que ejecuta el gateway. El formato es nombre/versión.
URL Ofrece la parte base de la dirección URL.
 

Principal HTML Formularios VBScript JScript ASP. ODBC. SQL. ADO Mantenimiento Seguridad

Taller elaborado y dictado por
Andrés Esteva Spinetti.  webmaster@adm.ula.ve
Webmaster de la Universidad de Los Andes.