Función encode decode ASP clásico

Código ASP clásico

Un programador de ASP clásico puede utilizar la función Encode/Decode para el manejo seguro de cadenas de texto. Esta función nos permite brindar una capa adicional de seguridad en nuestros scripts ASP clásico.

Funciones encode / decode para realizar la codificación y decodificación de cadenas de texto pasadas a través de querystring en ASP clásico.

Server.URLEncode

Se utiliza para la codificación de los datos que se pasará a través de una variable querystring. Una variable de cadena de consulta (querystring) es cualquier cosa siguiendo el signo de interrogación (?) en el campo URL de su navegador. Se utiliza querystring cuando se realiza una redirección o se construye un hipervínculo a otra página en su sitio.

<a href="page2.asp?name=Pancracio+Luna">click</a>

  <%
Response.Redirect "page2.asp?ID=3"
%>

En el ejemplo anterior, el hipervínculo contiene una variable llamada "name", que tiene un valor de "Pancracio Luna" (el espacio se codifica como "+").

En la declaración Response.Redirect, tenemos una variable querystring llamada "ID" con un valor de 3.

Para realizar una codificación URL en una variable (a efectos de pasar la variable a otra página) utilice el siguiente código ASP clásico:

<a href="page2.asp?name=<%= Server.URLEncode(sName) %>">click</a>  

<%  Response.Redirect "page2.asp?ID=" &_      Server.URLEncode(nID)  %>


URLDecode

Por alguna razón, Microsoft no incluyó una función de decodificación URL con Active Server Pages. Probablemente, esto se debía a que la decodificación de las variables de cadena de consulta se realiza automáticamente para usted cuando se accede al objeto cadena de consulta:

<%= Request.QueryString("name") %>

Para aquellos que necesiten esta función:


' -----------------------------------------
' URL decode to retrieve the original value

Function URLDecode(sConvert)
Dim aSplit
Dim sOutput
Dim I
If IsNull(sConvert) Then
URLDecode = ""
Exit Function
End If

' convert all pluses to spaces
sOutput = REPLACE(sConvert, "+", " ")

' next convert %hexdigits to the character
aSplit = Split(sOutput, "%")

If IsArray(aSplit) Then
sOutput = aSplit(0)
For I = 0 to UBound(aSplit) - 1
sOutput = sOutput & _
Chr("&H" & Left(aSplit(i + 1), 2)) &_
Right(aSplit(i + 1), Len(aSplit(i + 1)) - 2)
Next
End If

URLDecode = sOutput
End Function

Server.HTMLEncode

Esta función incorporada de utilidad es muy útil para la codificación de texto que se debe mostrar en un campo input de formularios. Un campo input es un control de formulario web, como input o textarea. Usted puede haber notado que ciertos caracteres HTML son interpretados incorrectamente en el formulario web. En concreto, los caracteres de la etiqueta HTML "<" y ">" pueden tener este efecto, así como el carácter de comillas (") que se utiliza para encapsular los valores.

<textarea name="sample" width=38 height=10>


<%= Server.HTMLEncode(sValue) %>
</textarea>


HTMLDecode

Al igual que con la función URLDecode descrita anteriormente, Microsoft, en su infinita sabiduría decidió no incluir una función HTMLDecode con su componente de servidor. De cualquier forma, aquí esta una función HTMLDecode que puede usar:

Function HTMLDecode(sText)
Dim I
sText = Replace(sText, "&quot;", Chr(34))
sText = Replace(sText, "&lt;" , Chr(60))
sText = Replace(sText, "&gt;" , Chr(62))
sText = Replace(sText, "&amp;" , Chr(38))
sText = Replace(sText, "&nbsp;", Chr(32))
For I = 1 to 255
sText = Replace(sText, "&#" & I & ";", Chr(I))
Next
HTMLDecode = sText
End Function

tags: funcion encode decode asp classic, asp classic base64 encode, classic sp decode query string, classic asp url decode, classic asp url encode, base64 vbscript, decode base64 vbscript, asp clasico ejemplos, asp classic

En esta sección encontrarás una mezcla de códigos recopilados de fuentes públicas de Internet y otros creados por ASP TEAM. Compartimos recursos útiles de buena fe para formar una base de conocimiento en el desarrollo de aplicaciones en ASP Clásico.