Ver Mensaje Individual
  #5 (permalink)  
Antiguo 05/06/2011, 09:45
IEKK
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 14 años, 6 meses
Puntos: 202
Respuesta: Como borrar datos cuando pasen 7 dias

Cita:
Iniciado por kavascript Ver Mensaje
Creando un archivo PHP y que lo ejecutes tu manualmente, ya que si lo tienen que ejecutar los usuarios podria llegar a ser muy pesado para ellos. El archivo tendria que contener lo siguiente:


Código PHP:
$sql mysql_query("SELECT * FROM `tabla` WHERE `fecha_creacion`>=604800;");
while(
$archivo mysql_fetch_array($sql)) {
mysql_query("DELETE FROM `tabla` WHERE id=".$archivo['id'].";");
echo 
'Registro '.$archivo['id'].' tenia '.($archivo['fecha_creacion'] / 86400).' dias de antiguedad y fue eliminado.<br />';
}
if(
mysql_num_rows($sql)==0) echo "No hay registros que limpiar"

Tambien hay que crear en la tabla un nuevo campo que se llame fecha_creacion, ahi tienes que guardar la fecha en formato timestamp de PHP cada vez que creas un registro.

Un saludo
Salvo que la tabla fuera exagerada exagerada, los usuarios notarán apenas unos milisegundos que no afectaría al cargar la web, por lo que como dijo Uncontroled_Duck es factible llamarlo en la misma página.

Si de paso se trata sólo de automatizar el proceso y no necesitas mostrar información sobre los registros te basta una sola consulta. Lo cual apenas te tardará.


Código PHP:
mysql_query("DELETE FROM `tabla` WHERE `tufecha`>=604800;"); 
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(