Foros del Web » Programando para Internet » PHP »

alguna forma real de borrar la cache

Estas en el tema de alguna forma real de borrar la cache en el foro de PHP en Foros del Web. Hola gente tengo un sistema de subidas de imágenes y borrado que me está creando problemas porque necesito que cada vez que una imagen se ...
  #1 (permalink)  
Antiguo 10/10/2008, 04:16
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
alguna forma real de borrar la cache

Hola gente tengo un sistema de subidas de imágenes y borrado que me está creando problemas porque necesito que cada vez que una imagen se borre se borre la cache para que no me siga mostrando el botón del formulario borrar junto con la imagen ya borrada. También para cuando una nueva se sube. He buscado hasta la saciedad por google y estos foros y me he topado con dos "soluciones" que a mi al menos no me han servido.

Primer intento: creo un script que luego llamo con include desde las páginas donde quiero borrar la cache (logicamente lo pongo arriba de todo no en <head>).
nocache.php
Código:
<?php 
header("Expires: Mon, 20 Mar 1998 12:01:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
?>
Luego haría desde la página que quiero borrar cache
include("nocache.php").
¿eso está bien?, púes a mi no me funciona

Segundo intento : llamar cada vez a la imagen "de distinta manera" para que se actualice la cache.

Código:
<img src="<?=$imagen;?>?<?=rand(0,999);?>" />
Esto lo he sacado entre otros sitios de aquí.
http://www.forosdelweb.com/f18/probl...-cache-489310/

Ambos sistemas no me borran la cache porque si la borro manualmente o si cambio de página y vuelvo a la de las imágenes me funciona lo que necesito que es que al subir la imagen se muetre en la página sin tener que recargar y al borrarla lo mismo , ¿es esto tan complicado?.

Desde ya mil gracias.
  #2 (permalink)  
Antiguo 10/10/2008, 04:30
Avatar de vb2005  
Fecha de Ingreso: noviembre-2005
Ubicación: Paderborn - Alemania
Mensajes: 566
Antigüedad: 18 años, 5 meses
Puntos: 24
Respuesta: alguna forma real de borrar la cache

se supone que con header("Cache-Control: no-cache"); debería bastar

una aclaracion, en la ultima linea de una seccion no en necesario poner ;

osea es inncesesario poner <? echo "Hola";?> es lo mismo <?="Hola"?> o <? echo "hola"?>

eso solo en el caso de que estes en la ultima linea o solo tenga un procedimiento dentro de las llaves
__________________
www.marcher.com.uy - Web personal
Nerd's Corner - Desarrollo de software a medida
  #3 (permalink)  
Antiguo 10/10/2008, 05:30
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: alguna forma real de borrar la cache

Perdón pero no entiendo que quieres decir con esta linea.
Cita:
osea es inncesesario poner <? echo "Hola";?> es lo mismo <?="Hola"?> o <? echo "hola"?>
gracias
  #4 (permalink)  
Antiguo 10/10/2008, 08:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: alguna forma real de borrar la cache

Mmmm yo ocupo estos headers:
Código php:
Ver original
  1. header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1
  2.     header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1
  3.     header('Content-Transfer-Encoding: none');
  4.     header('Pragma: public');
  5.     header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
  6.     header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');

Pruebalos.

Saludos.
  #5 (permalink)  
Antiguo 10/10/2008, 10:21
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: alguna forma real de borrar la cache

Cita:
Iniciado por GatorV Ver Mensaje
Mmmm yo ocupo estos headers:
Código php:
Ver original
  1. header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1
  2.     header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1
  3.     header('Content-Transfer-Encoding: none');
  4.     header('Pragma: public');
  5.     header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
  6.     header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');

Pruebalos.

Saludos.
Hola, si pongo eso me devuelve este error

syntax error, unexpected T_STRING in /home/robertos/public_html/fns/nocache.php on line 3

Gracias de antemano
  #6 (permalink)  
Antiguo 10/10/2008, 12:14
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: alguna forma real de borrar la cache

Tienes un error en alguna parte de tu código, revisa que tienes en las lineas 2 a la 4.

Saludos.
  #7 (permalink)  
Antiguo 10/10/2008, 13:11
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: alguna forma real de borrar la cache

Cita:
Iniciado por GatorV Ver Mensaje
Tienes un error en alguna parte de tu código, revisa que tienes en las lineas 2 a la 4.

Saludos.
es una archivo que solo contiene el código que tu me has pasado y luego es llamado desde otro archivo con include.

Saludos y gracias desde ya.
  #8 (permalink)  
Antiguo 10/10/2008, 13:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: alguna forma real de borrar la cache

Pues revisa bien si lo copiaste correctamente ya que si ves el código no tiene error de sintaxis (es decir que hay una comilla de mas o algo por el estilo).

Saludos.
  #9 (permalink)  
Antiguo 11/10/2008, 12:53
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
De acuerdo Respuesta: alguna forma real de borrar la cache

Ok revisaré , revisaré.

Ya lo he logrado, parece ser que si no pegas todo el código al principio de la página da ese error tan extraño que no entendía.

He comprobado que llame con include a el script "nocache.php" o no da exactamente lo mismo, es decir , despúes de haber subido una imagen tengo que recargar la página para poder verla sino no se ve, y con el borrado me pasa exactamente lo mismo. También he probado a pegar el código en la página en vez de poner el include y tampoco funciona, el código tal cual:

header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1
header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1
header('Content-Transfer-Encoding: none');
header('Pragma: public');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');

Gracias y saludos

Última edición por Dundee; 12/10/2008 a las 06:00
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 09:27.