Foros del Web » Programando para Internet » PHP »

Ayuda con Delete y Fechas..

Estas en el tema de Ayuda con Delete y Fechas.. en el foro de PHP en Foros del Web. Buenas noches!!, haber.. tengo un problemita con la funcion DELETE... lo que quiero hacer, es borrar los registros que sean mayores a un dia.. cuando ...
  #1 (permalink)  
Antiguo 20/10/2007, 18:50
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Ayuda con Delete y Fechas..

Buenas noches!!,

haber.. tengo un problemita con la funcion DELETE...

lo que quiero hacer, es borrar los registros que sean mayores a un dia..

cuando lo ingreso, le pongo la fecha de ingreso, con time()

pero despues a la hora de hacer el DELETE, nose como decirle que elimine esos registros..


muchas gracias!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #2 (permalink)  
Antiguo 20/10/2007, 19:08
 
Fecha de Ingreso: julio-2005
Ubicación: Guatemala
Mensajes: 165
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: Ayuda con Delete y Fechas..

Bueno si ya tienes la fecha desde donde quisieras borrar, solo debes recordar que MySQL trabaja con el fomato año-mes-dia y lo demas es:

Código PHP:
$fecha_borrar date(Y)."-".date(m)."-".date(d);
DELETE FROM tabla WHERE fecha > {$fecha_borrar
__________________
Guatemala - Guatemala
  #3 (permalink)  
Antiguo 20/10/2007, 21:54
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda con Delete y Fechas..

Buenas..
gracias por responder!!
no lo he provado, porque recien llego,,
pero creo que no me va a funcionar..

la fecha yo la guardo en un INT y me la guarda algo asi: 1025412250014
osea, despues con ese numero, saco la fecha con la funcion date() como lo hicistes en la consulta ahi..

no hay alguna forma de decir que si ya pasaron por ejempli 3600 segundos de la fecha (una hora) te lo borre..??
o en mi caso no se bien cuantos segundos serian..

saludos!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #4 (permalink)  
Antiguo 22/10/2007, 15:48
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda con Delete y Fechas..

Alguna idea de como hacerlo???

saludos y gracias!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #5 (permalink)  
Antiguo 22/10/2007, 16:41
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Re: Ayuda con Delete y Fechas..

Como guardas la fecha ? con time(); ?

Si es asi lo que debes hacer es tomar el time de mañana y hacer lo mismo:
Código PHP:
$maniana time() + (24 60 60); //24 Horas * 60 minutos * 60 segundos
//DELETE FROM tabla WHERE fecha > $maniana 
A menos que quieras validar cada fecha y eso podria hacerse asi:
Código PHP:
$sql "SELECT id, fecha FROM tabla";
$result mysql_query($sql);
while(
$data mysql_fetch_array($result)){
    
//luego cada fecha la validas con un dia mas
    
$fechaDato $data['fecha'];
    if(
$fechaDato+(24*60*60) > time() + (24*60*60)){
        
$fechaAEliminar[] = $data['id'];
    }
}
//y ahora eliminas los id que encontraste arriba
for($i=0;$i<count($fechaAEliminar);$i++){
    
$sql "DELETE FROM tabla WHERE id = ".$fechaAEliminar[$i];
    if(
mysql_query($sql)){
        
//Sumas los datos eliminados
        
$eliminado++;
    }
}
echo 
"Se han eliminado ".$eliminado." registros"
No esta testeado ningun procedimiento asi que te recomiendo usar datos garbage para testearlos.

Suerte!

Ps.: Todo esto si guardas la fecha como time().
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #6 (permalink)  
Antiguo 22/10/2007, 18:57
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda con Delete y Fechas..

Hola!
gracias por reponder!, ahora voy a probar el codigo..
pero hay algo igual que no entiendo bien,,
para que le sumas 24*60*60 al time() y a la fecha del user? no seria lo mismo dejar a los dos iguales, osea, sin el +24*60*60 ¿

saludos!!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #7 (permalink)  
Antiguo 23/10/2007, 08:42
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda con Delete y Fechas..

Bueno, ante todo, gracias por responder..
ese codigo no aduvo..
pero bueno, lo puede solucionar de una manera mas que sensilla xD
era solo cuestion de ponerse a pensar un poco..

muchas gracias!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #8 (permalink)  
Antiguo 23/10/2007, 08:48
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda con Delete y Fechas..

Ah bueno, por las dudas dejo como lo solucione, por si le surgue la misma duda a alguno..


Código PHP:
$hoy time()-86400// sacammos la hora actual y le restamos un dia;

mysql_query("DELETE FROM tabla WHERE '$hoy'>=fecha"); 
eso es todo

todo esto, suponiendo que la fecha esta guardada en la BD con la funcion time(), osea que se la guarda como un entero (1452364125)

aclaro, ESTO ES PARA BORRAR REGISTROS MAYORES A UN DIA DE LA BD..

saludos!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #9 (permalink)  
Antiguo 23/10/2007, 08:51
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Re: Ayuda con Delete y Fechas..

Okales... de todas maneras esa suma era para agregarle un dia, tal vez el script no debia sumarle un dia al time(). xD

Pero como no hice testeo lo deje asi.

//24 Horas * 60 minutos * 60 segundos

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #10 (permalink)  
Antiguo 23/10/2007, 08:54
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Re: Ayuda con Delete y Fechas..

Exacto, yo dps me puse a mirarlo, y debiamos haberle sumado el dia a la fecha del registro, pero no al time

xD!

adios!
MC
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
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.
Respuesta




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