Categorías destacadas
programacion php    
Artículo
0
¡votar!

 Codificación de URLs

1 . Server.URLEncode
2 . Codificación de carácteres en formato HTML

Server.URLEncode

Cuando utilices páginas con paso de variables entre ellas (como parámetros en la URL) es importante que tengas en cuenta que el navegador Netscape no será capaz de interpretar caracteres especiales como espacios, guiones, o la letra Ñ. Esta caracteristica puede evitarse utilizando el método URLencode del objeto server mediante la cual se puede formatear cualquier cadena con caracteres de escape que serán correctamente procesados por los dos navegadores más conocidos del mercado.

Por citar un ejemplo el valor "MªAngeles Muñoz" se convertiría -utilizando URLEncode- en "M%AAAngeles+Mu%F1oz"

Página de envio de datos: envio.asp

<html>
<head>
	<title>Datos personales</title>
</head>
<body>
Enlace a la <a href="test.asp?nombre=MªAngeles Muñoz">página de pruebas</a>
</body>
</html>

Página de recepción de datos: test.asp

<html>
<head>
	<title>Datos personales</title>
</head>
<body>
    El nombre recibido es: <% response.write request.querystring("nombre") %>
</body>
</html>

Si ejecutas el enlace al que apunta esta página, verás que con Netscape se produce un error de tipo 400 Petición errónea

La sentencia correcta debería haber sido:

    Enlace a la <a href="test.asp?nombre=<%=server.URLEncode("MªAngeles 
             Muñoz")%>">página de pruebas</a>

Observa en la siguiente imagen la diferencia en la URL respecto a la imagen anterior (incorrecta)

Codificación de carácteres en formato HTML

El concepto inverso al explicado anteriormente también puede ser necesario aplicarlo en los desarrollos Web. Para ello utilizaremos el método HTMLEncode del objeto Server mediante el cual podremos mostrar una cadena con los caracteres de escape que se utilizan en HTML.

Un ejemplo de la utilidad de HTMLEncode, lo tenemos cuando se desea mostrar un texto recibido por querystring como valor de un objeto de un formulario HTML.

Sigue el siguiente ejemplo para ponerlo en práctica:

Formulario de recepción de datos: verDatos.asp

<html>
<head>
	<title>Datos personales</title>
</head>
<body>
<form name="form1" action="verDatos.asp" method="get">
   Nombre: <input type ="text" name="nombre" value=
            "<%=Server.HTMLencode(request.querystring("nombre"))%>"> <br>
   Dirección: <input type ="text" name="direccion" value=
            "<%=Server.HTMLencode(request.querystring("direccion"))%>"> <br>
   Aficiones:<input type ="text" name="aficiones" value=
            "<%=Server.HTMLencode(request.querystring("aficiones"))%>"> <br>
   <input type=submit>
</form>
</body>
</html>

En el ejemplo anterior, los parametros:

serían convertidos mediante HTMLEncode en

   
Publicado por:
Walter Nieves
Recomendar
a un amigo
Compartir
en redes
 
Comentarios
 
BBDD
Entornos de desarrollo
Entretenimiento
Herramientas
Internet
Lenguajes de script
Lenguajes imperativos
Lenguajes orientados a objeto
Otros lenguajes
Plataformas
Teoría
Varios
Copyright © 1998-2011 Programación en Castellano. Todos los derechos reservados
Datos legales | Politica de privacidad | Contacte con nosotros | Publicidad

Diseño web y desarrollo web. Un proyecto de los hermanos Carrero.

Red internet:
Juegos gratis | Servidores dedicados
Más internet: Password | Directorio de weblogs | Favicon