Recargar imagen

Hola Lukas
Estoy haciendo un sistema de autogestión en php.
Utilizo formularios de html
El problema es que cuando subo una imagen y luego de subida la despliego en el formulario, si luego la cambio y vuelvo al formulario la imagen no se actualiza.
Eso despista a los usuarios.
Yo logro hacer aparecer la nueva borrando los temporales, pero no le puedo pedir eso a todos y cada uno.
Hay alguna opción
Muchas gracias
Ya intente con
<meta http-equiv="Expires" content="0">
<meta http-equiv="Last-Modified" content="0">
<meta http-equiv="Cache-Control" content="no-cache, mustrevalidate">
<meta http-equiv="Pragma" content="no-cache">
Gracias por cualquier orientación

1 Respuesta

Respuesta
1
El problema que tienes es un clásico. A mi me sucedió al cargar variables desde flash (que bajaba un txt del servidor). La primera vez bajaba todo bien, pero si lo modificaba, el usuario seguía viendo el viejo, hasta que eliminase todos los temporales, y a veces incluso ni eso servia.
El asunto esta en que el internet explorer mantiene un cahce de los archivos que baja. Y por más que yo actualice mi documento en el servidor, mientras tenga el mismo nombre, el IE cree que es el que ya bajo antes, y entonces no lo vuelve a bajar.
La solución, o truco mejor dicho, consiste en hacerle creer que es otro archivo.
Esto se logra llamando al archivo y agregándoles una variable inexistente a la dirección.
Si el archivo esta en:
http:\\www.miservidor.com\files\imagen01.jpg
En lugar de usar esa URL, usa esta:
http:\\www.miservidor.com\files\imagen01.jpg?1234678
El internet explorer ignora todo lo que este después del "?" pero en la práctica cree que el archivo se llama "imagen01.jpg?12345678". Así que lo vuelve a bajar, y cuando manda esa dirección llega al archivo "imagen01.jpg".
Pero claro, agregarle "?12345678" a la URL solo funciona una vez, a la segunda ves el IE lo reconoce como que ya lo bajo antes. Por eso en tu código PHP cuando pones la URL de la imagen, agregale al nombre el "?" y concatenale una variable como la fecha por ejemplo. De ese modo cuando el PHP se ejecute, la URL de la imagen sera "imagen01.jpg?[la fecha]". Y como la fecha siempre cambia, el nombre de la imagen sera siempre diferente, para el IE.
Seria algo así:
-- HTML y PHP CODE ----------
<img src=<?
echo "'http://www.miservidor.com/files/imagen01.jpg?" . date('Y-m-d') . "'"
?> >
-- Lo que da de resultado ---
<img src='http://www.miservidor.com/files/imagen01.jpg?20051115'>
-------------------------

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas