Loading...

Función encode decode ASP clásico

Ez.Biz Cloudware
Blog de ASP Clásico

Función encode decode ASP clásico

Código ASP clásico

Por ASP clásico / 12/05/2016 @ 10:33:11 / 1567 visitas

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

Descubre más sobre cómo simplificar y optimizar tu trabajo empresarial en el Blog de CoreASP.

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

Descargo de Responsabilidad:

El contenido y los recursos que ofrecemos en CoreASP están destinados únicamente a proporcionar herramientas y ejemplos prácticos para el desarrollo en ASP Clásico. Esta información es de carácter general y no debe considerarse asesoramiento profesional o técnico específico para tu proyecto. Aunque hacemos todo lo posible por asegurar la calidad y precisión de los recursos compartidos, no garantizamos que sean completamente libres de errores o que se ajusten perfectamente a todas las situaciones. CoreASP no se responsabiliza por cualquier pérdida, daño o inconveniente derivado del uso directo o indirecto de los recursos o información proporcionada. Además, CoreASP no respalda ni asume responsabilidad por enlaces o contenido de terceros que puedan estar referenciados en nuestra plataforma. Todos los derechos de propiedad intelectual sobre el contenido y recursos publicados en CoreASP pertenecen a CoreASP o a sus respectivos propietarios, y su uso está sujeto a las condiciones de la licencia especificada para cada recurso. Nos reservamos el derecho de modificar este descargo de responsabilidad en cualquier momento sin previo aviso. Para más detalles, consulta el documento completo de términos y condiciones.