Request
El objeto Request se utiliza para recoger los parámetros de entrada del script, es decir, los datos de los formularios o las variables pasadas mediante la interrogación en la URL. No tiene métodos ni propiedades dignas de mención, sino sólo tres colecciones muy importantes: Form, QueryString y ServerVariables.
Colección Request.Form
Mantiene la colección de parámetros pasados al script mediante el método POST, que es el usado preferentemente en los formularios, de ahí su nombre. Request.Form nos devuelve siempre la colección de parámetros. Por tanto, la expresión admite la sintaxis de las colecciones de Visual Basic, es decir:
También es posible iterar sobre las colecciones anteriores mediante bucles For each. El siguiente ejemplo nos muestra todos los parámetros pasados al script y sus valores:
<%
For each param In Request.Form
Response.Write ("<p>")
Response.Write("El parámetro " & param & " toma el valor " & Request.Form(param) )
Response.Write("</p>")
Next
%>
Colección Request.QueryString
Mantiene la colección de parámetros pasados al script mediante el método GET, que es el utilizado cuando se escribe la URL seguida del símbolo ? y de los parámetros con sus valores. Por ejemplo:
http://www.cocinatusrecetas.com/message.asp?MessageID=58086&pagina=1&idTema=58086
Invoca el script pasando las variables nombre (valor = Pepe) y apellido (valor = Gotera). El símbolo & se utiliza como separador entre los distintos parámetros. Aunque no es lo habitual, también los formularios pueden utilizar el método GET. Para ello basta con ponerlo en la marca <FORM> de la página web:
<FORM method=GET action = "MiForm.asp">
En este caso, los parámetros del formulario los obtendríamos en Request.QueryString en lugar de en Request.Form.
Colección Request.ServerVariables
Mantiene la colección de las variables de entorno del servidor web. Entre las mismas, podemos encontrar valores muy interesantes conocidos por el servidor web, como la dirección IP del usuario que está viendo las páginas, el login y contraseña si estamos en un directorio de acceso restringido, el nombre del dominio, el nombre del script, etc.
Estas son algunas de las variables de servidor:
VARIABLE | DESCRIPCIÓN |
.ALL_HTTP | Todas las cabeceras HTTP enviadas por el cliente. |
AUTH_PASSWORD | La contraseña del cliente. |
AUTH_USER | Nombre de usuario autentificado en bruto (raw). |
CERT_COOKIE | ID de usuario único para el certificado del cliente, devuelto como cadena de caracteres. Puede ser usado como firma para el certificado al completo. |
CERT_FLAGS | El bit0 es puesto a 1 si está presente el certificado del cliente. El bit1 es puesto a 1 si la autoridad de certificados del certificado del cliente es inválida (no está en la lista de las reconocidas en el servidor). |
CERT_ISSUER | Campo del suministrador del certificado de cliente (O=MS, OU=IAS, CN=user name, C=USA). |
CERT_KEYSIZE | Número de bits de la clave SSL. Por ejemplo, 128. |
CERT_SECRETKEYSIZE | Número de bits en la clave secreta del certificado del servidor. Por ejemplo, 1024. |
CERT_SERIALNUMBER | Campo del número de serie del certificado del cliente. |
CERT_SERVER_ISSUER | Campo para el suministrador del certificado del servidor. |
CERT_SERVER_SUBJECT | Campo del sujeto del certificado del servidor. |
CERT_SUBJECT | Campo del sujeto del certificado del cliente. |
CONTENT_LENGTH | La longitud del contenido tal como es suministrado por el cliente. |
CONTENT_TYPE | El tipo de datos del contenido. Se usa con solicitudes que adjuntan información, como las solicitudes de http GET, POST, y PUT. |
GATEWAY_INTERFACE | La revisión de la especificación CGI usada por el servidor. El formato es CGI/revision. |
HTTP_<HeaderName> | El valor almacenado en la cabecera o header llamada HeaderName. Cualquier header distinto de los incluidos en esta tabla debe ser prefijado por HTTP_ para que la colección de ServerVariables pueda recuperar su valor. Tenga en cuenta que el servidor interpreta cualquier carácter con guión bajo (_) en HeaderName como guiones normales en el header. Por ejemplo, si escribe HTTP_MY_HEADER, el servidor busca por un header enviado como MY-HEADER. |
HTTPS | Devuelve una activación ON si la petición vino a través de un canal seguro (SSL), o devuelve una desactivación OFF si la petición es a través de un canal no seguro. |
HTTPS_KEYSIZE | Clave de tamaño en bits de una conexión Secure Sockets Layer. Por ejemplo, 128. |
HTTPS_SECRETKEYSIZE | Número de bits en una clave privada de certificado del servidor seguro. Por ejemplo, 1024. |
HTTPS_SERVER_ISSUER | Campo para el suministrador del certificado del servidor seguro. |
HTTPS_SERVER_SUBJECT | Campo del sujeto del certificado del servidor |
INSTANCE_ID | La ID para la instancia IIS en el modo texto. Si la instancia ID es 1, aparece como una cadena. Puede usar esta variable para recuperar la ID de la instancia del servidor web (en la base de datos) al cual corresponde la petición. |
INSTANCE_META_PATH | La ruta de la metabase para la instancia del IIS que responde a la petición. |
LOCAL_ADDR | Devuelve la dirección del servidor en la que entró la petición. Esto es importante en el caso de las máquinas multi-homed, donde puede haber múltiples direcciones IP enlazadas a una máquina, y puede interesar conocer cuál es la dirección usada por la petición. |
LOGON_USER | Nombre de usuario de la cuenta de Windows. |
PATH_INFO | Información sobre una ruta extra tal como es ofrecida por el cliente. Usted puede acceder a scripts usando su ruta virtual y la variable de servidor PATH_INFO. Si esta información proviene de una URL, es decodificada por el servidor antes de que sea pasada al script CGI. |
PATH_TRANSLATED | Versión traducida de PATH_INFO que toma la ruta y configura cualquier estructura necesaria de relación virtual-física. |
QUERY_STRING | Petición de información almacenada en la cadena siguiendo al signo de interrogación (?) en la solicitud http. |
REMOTE_ADDR | La dirección IP del host remoto que hace la consulta. |
REMOTE_HOST | El nombre del host que hace la consulta. Si el servidor no tiene esta información, utilizará REMOTE_ADDR y dejará esta variable vacía. |
REMOTE_USER | Cadena de nombre de usuario no localizada, introducida por el usuario. Este es el nombre que es realmente enviado por el usuario, distinto de aquellos que son modificados por cualquier filtro de autentificación instalado en el servidor. |
REQUEST_METHOD | Método usado para realizar la consulta. Para HTTP, éste es GET, HEAD, POST, etc. |
SCRIPT_NAME | Una ruta virtual al script que está siendo ejecutado. Es usado para autoreferenciar direcciones URL. |
SERVER_NAME | El nombre, alias DNS, o dirección IP del servidor, tal como aparecería en la autoreferencia de direcciones URL. |
SERVER_PORT | El número de puerto al que fue enviada la petición. |
SERVER_PORT_SECURE | Una cadena que contiene 0 ó 1. Si la petición está siendo manejada a través de un puerto seguro, entonces la cadena será 1. De otro modo, será 0. |
SERVER_PROTOCOL | El nombre y revisión del protocolo de peticiones de información. El formato es protocol/revision. |
SERVER_SOFTWARE | El nombre y versión del software del servidor que responde las peticiones. El formato es name/version. |
URL | Proporciona la porción básica de la URL. |
Ejemplo:
<h3> Usted está viendo el dominio <%= Request.ServerVariables("SERVER_NAME") %> </h3>
admin @ 15:46 | comentarios (44) | Links Permanentes
Response
Este objeto se utiliza para tratar la salida del script, es decir, lo que verá el usuario en su navegador.
Los métodos mas importantes del objeto response son los siguientes:
<%
if num > 1000 then
Response.Write ("<h1>Se ha pasado de rosca</h1>")
End if
%>
Es totalmente equivalente a éste
<% if num > 1000 then %>
<h1>Se ha pasado de rosca</h1>
<% End if %>
De hecho, el HTML intercalado se implementa internamente mediante sentencias Response.Write.
<% Response.Redirect (http://www.cocinatusrecetas.com) %>
La redirección se implementa mediante cabeceras HTTP que son distintas que las enviadas cuando se muestra una página web. Eso significa que si se utiliza Response.Write o se intercala cualquier código HTML, ya no funcionará un posterior Response.Redirect porque se habrán enviado las cabeceras de mostrar una página web, no las de redirección. No obstante, existe una forma de rectificar y enviar un comando de redirección tras haber enviado comandos write. Esto implica el uso de la propiedad Buffer y los métodos Flush y Clear, como se explica a continuación.
El único método más importante del objeto Response es Write.
admin @ 15:03 | comentarios (2) | Links Permanentes
Existen bastantes funciones para el manejo de cadenas, a continuación explicaremos las más usadas.
Ejemplo:
<%
Dim palabras,i
'Ejemplo del uso de la función que nos devuelve la longitud de la cadena
Response.Write(len("12345") & "
")
' Uso de Split, nos devuelve un array con las cadenas separadas por espacios, es decir en este caso se corresponde con las palabras
i=0
palabras=split("Esto es una prueba"," ")
Response.Write(palabras(0)&"
")
Response.Write(palabras(1)&"
")
Response.Write(palabras(2)&"
")
Response.Write(palabras(3)&"
")
' Función para devolver una subcadena de otra
Response.Write(mid("Devuelve una subcadena de otra",9,3) & "
")
' Función que elimina los espacios en blanco iniciales y finales
if trim(" Cadena ") = "Cadena" then
Response.Write("Iguales
")
end if
' Ejemplo de búsqueda de un texto dentro de una cadena de caracteres
Response.Write(instr("Busca la palabra dentro de la frase", "palabra") & "
")
' Función que remplaza una cadena por otra
Response.Write(replace("Un pez de color verde, como verde es la hierba.","verde","rojo") & "
")
%>
admin @ 14:52 | comentarios (0) | Links Permanentes
<< November 2005 >> | ||||||
---|---|---|---|---|---|---|
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
archivos
November - 2013