Google
Web dns.bdat.net

Re: [PHP-ES] Re: friendly URL en PHP + MySQL

Write haof XML files: listas@uakari.com
Fecha: vie 25 mar 2005 - 11:00:25 CET


>> Y por otra parte no es seguro usar un parámetro llegado por GET o POST.
>>
>> Recuerdo como en el WEB de alguna de las revistas de América Ibérica
>> ponían el título tal cual llegaba por GET (El enlace lo generaban
>> sacando el título de la BD) y manipulando la URL podías hacer
>> verdaderas atrocidades.
>> No es muy recomendable.
>
> Aquí ya me perdiste un poco. En todo caso, si yo quiero lograr:
> www.sitio.com/categoria
> www.sitio.com/titulo_de_la_nota
> ¿Cuál sería el método más recomendable? Los que yo estuve viendo se
> basan en descomponer REQUEST_URI, como explicaba Jordi Canals, a quien
> también agradezco su otra respuesta.
>
> Saludos
>
Te respondo tangencialmente.

Bueno, la discusión está en que no es adecuado usar un parámetro llegado
por la URL para mostrar o usar en la página.

Por ejemplo:

noticia.php?id=56&titulo=Mi titulo bonito

Si usamos $_GET['titulo'] para recoger y mostrar el título, puede
suceder que alguien malicioso cambie la URL y ponga:
noticia.php?id=56&titulo=Recuerdos Sobre Tu Madre

y ya tienes el lío montado.

He visto como a menudo se almacena el título e incluso el texto en un
campo duplicado sin acentos ni mayúsculas donde se realizan las búsquedas...

Solo recuerda que no es fiable la URL para obtener datos, de hecho
puedes hacer cosas como poner un enlace:
noticia.php?id=9f61408e3afb633e50cdf1b20de6f466

que es lo mismo que decir 56 pasado por la función md5: md5(56)
O si quieres puedes poner solo los 3 o 10 primeros caracteres o ultimos
y buscarlos... el caso es que no puedes tomar la URL como una fuente de
datos fiables a menos que tomes precauciones.

Si usas:
noticia.php?id=56&test=9f61408e3afb633e50cdf1b20de6f466 al menos puedes
comparar y ver si te han manipulado la URL o si ha habido algún error.

Pero ya sabes que eso de la seguridad igual que la eficiencia, es cosa
de neuróticos.

Darle el control de lo que muestras a través de la URL al usuario tiene
el riesgo de que use su 'memoria' y algo como
noticias/informe_medico_de_la_operacion

se transforme por arte de su memoria en
noticias/informe_medico_operacion

Con lo que necesitarias no es un conversor sino un buscador que te
dirija al resultado más probable.
Por eso es peligroso hacerlo directamente.
Y si es por los buscadores, recuerda que si un título es editado y
cambia (efecto memoria, solo que no aplicable al visitante) la url
cambia igualemente.

Bueno, no creo que nada de todo esto lo hayas pensado antes, pero...

Devta.

___________________________________________________

Yahoo! Messenger - Nueva versión GRATIS

Super Webcam, voz, caritas animadas, y más...

http://messenger.yahoo.es

-- 
PHP Spanish Localization Talk Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


Este archivo fue generado por hypermail 2.1.7 : sáb 18 mar 2006 - 18:24:09 CET