Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/10/2011, 18:55
Avatar de leonardomontilla
leonardomontilla
 
Fecha de Ingreso: octubre-2011
Ubicación: Caracas
Mensajes: 6
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Eliminar cache de imagenes

Hola,
Si no he comprendido mal, tienes una imagen con un nombre la cual puede cambiar su contenido y debido a la cache no se actualiza la imagen en el navegador. Es necesario cambiar el nombre de la imagen para obligar al navegador a recargarla, es decir, a actualizar la cache.

Como en este caso no deseas cambiar el nombre, un truco es extender el nombre de la imagen utilizando una URL falsa. No sé si ese es el término correcto, pero a continuación lo ilustro:

Imagen original:
<img src="imagen.jpg" ... />

Imagen "forzada":
<img src="imagen.jpg?1234" ... />

El añadirle al nombre de la imagen "?1234" no afecta su representación. El navegador será "engañado" y racargará nuevamente la imagen original (imagen.jpg) Sin embargo, la próxima vez, si deseas que se recargue nuevamente, deberás cambiar el valor después de "?", de lo contrario, el navegador recurrirá nuevamente a la cache. La solución es generar un número aleatorio cada vez que represente la imagen:

Con PHP podrías usar la función rand() para generar un número aleatorio (consulta la documentación) Un ejemplo para un valor aleatorio entre 1 y 1000

echo '<img src="imagen.jpg?' . rand(1,1000) . ' ... />';


Espero haberte ayudado.