Poltergeist de HTML...
Cuidado, este artículo es para mayores xD
Ayer en el curro detectamos un error en uno de los sitios web que estamos desarrollando... una clase PHP que registra las visitas al sitio nos estaba grabando siempre dos veces las visitas en index.php... ¿? Y lo que en principio parecía una chorrada se convirtió en una odisea. A saber, estos fueron nuestros pasos a seguir:
La cosa empezaba a ponerse complicada... porque parecía que no era culpa del PHP...
Entonces fue cuando nos dimos cuenta de que la página estaba cargándose dos veces. ¡! Ein? Comorrr? Quién le manda?
Vale, entonces el problema no era que se registrara dos veces la página, porque efectivamente se estaba ejecutando dos veces...
Siguientes experimentos:
Otra de las pruebas que hicimos era poner un alert... y solamente se mostraba una vez. Otra cosa rara. Un alert pero dos visitas al servidor??<div class="banner enlace" onclick="document.location.href='otrapagina.php?id=algo'">
<img src="" alt="imagen" />
<p>hola que pasa </p>
</div>
Bien. Aquí teníamos el problema... pero... cuál es?? Sospechando un click misterioso que lanzara el location, quitamos el onclick. Seguía navegando... y llegamos a la solución. src="". Cambiamos nuestro src por uno válido y dejó de navegar. Alucinando, probamos a poner un churro de texto en el src... y tampoco fallaba!!
Luego nuestra conclusión es que no se puede poner un img con un src vacío. La verdad es que nos tiene un poco flipando aún. No se nos ocurrió la forma de buscarlo en google porque seguro que tiene que estar documentado en algún sitio...
El caso es que probamos con más navegadores el poltergeist en cuestión. De Firefox (el navegador que usamos habitualmente) probamos con el IE7... ¡y también fallaba!... hmmm... y con Chrome? Probamos con Chrome y... voila! NO FALLA!! Probamos con Ópera y... NO FALLA! y probamos con Safari y... NO FALLA!! Todo esto en entorno Windows...
luego... qué sucio código se han copiado firefox y explorer para tener esa locura de fallo! qué demonios pasa realmente para que la página se ejecute dos veces en el servidor y solamente una vez en cliente? por qué, dios mío, por quéeeeeeeee???!!!!!
3 comentarios:
Jose escribió el 27 de noviembre de 2008, 21:00...
notengoniputaideaaaaaaaaa!!!!! pero qué putada
de todas formas tu poltergeist de html contagió al igoogle porque haciendo clic desde el igoogle en el enlace a tu post, abre en una solapa la página del post y... qué abre en la solapa del igoogle? pues... esta url http://www.google.es/otrapagina.php?id=algo
XD
al principio pensé que algún programador de google se había dejado el enlace en algún sitio pero al leer el post ya vi de qué era
poltergeist trasladables tío, peazo descubrimiento
Cris Varela escribió el 27 de noviembre de 2008, 23:12...
¡!
...
¿?
cobalto escribió el 28 de noviembre de 2008, 8:19...
claro, claro...
Comenta algo, venga...