Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ayuda!!!!

Estas en el tema de Ayuda!!!! en el foro de Mysql en Foros del Web. Que tal foreros, mi pregunta es ¿como hago yo para que un dato se borre después de transcurrido deteminada cantidad de días? Ej: | id ...
  #1 (permalink)  
Antiguo 23/07/2007, 14:04
 
Fecha de Ingreso: abril-2006
Mensajes: 43
Antigüedad: 18 años
Puntos: 1
Ayuda!!!!

Que tal foreros, mi pregunta es ¿como hago yo para que un dato se borre después de transcurrido deteminada cantidad de días?

Ej:

| id | nom | fecha_inicio | Fecha_caudica |
| 1 | my_nom | 2007-05-01 | 2007-05-15 |

Cumplida la fecha 2007-05-15 que solito se borre ¿esto se puede hacer en MySQL?
incluso, he visto en algunas páginas que hasta te cuentan con dias, minutos y segundos el tiempo restante... ¿esto como se logra?

desde ya muchas gracias.
  #2 (permalink)  
Antiguo 23/07/2007, 14:50
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: Ayuda!!!!

Pues, yo haría algo asi, no se si sería exactamente realizado de esta forma, pero es para que tengas una idea.
Código:
$fecha = date("d/m/y");
$borrar = mysql_query("DELETE FROM base_datos WHERE $fecha>='$fecha_caduca'",$con);
Saludos, cualquier cosa, pregunta.
  #3 (permalink)  
Antiguo 23/07/2007, 14:53
Avatar de ghosthead-nebula  
Fecha de Ingreso: marzo-2007
Mensajes: 273
Antigüedad: 17 años, 1 mes
Puntos: 3
Re: Ayuda!!!!

Bueno, en primer lugar considera ser más explícito en los títulos de los foros (pues sólo con "ayuda" no te tomarán muy en serio).

Ahora, con lo de tu duda. No soy expeerta, pero haré lo que pueda para ayudarte:

Esto creo que se hace en PHP (o el lenguaje que estés usando). Yo te doy un dato en PHP, a ver si te sirve.

Allí hay una instrucción llamada strotime(), la cual te transforma una fecha actual en un número simbólico (por ejemplo, 123456789). Todas las fechas tienen un número único (como una huella digital).

Puedes hacer así:

Código PHP:
// Selección de la base de datos y la variable fecha;
$resultado mysql_query("SELECT * FROM fechas");
while(
$row mysql_fetch_array($resultado))
    
$fecha $row['fecha_caducidad'];

//Para tener el número simbólico de la fecha actual
$hoy strtotime(date("Y-m-d")); 

/* Si mal no recuerdo, esto es para obtener el formato de la fecha en la
base de datos (esta ifno me la proporcionó otro forista) */
$caduca strtotime($fecha);
$caduca strtotime(date("Y-m-d",$caduca)); 

// Comparando los resultados para borrar los datos
if($hoy == $caduca)
    {
        
// QUERY para borrar la base de datos
    

Si alguien tiene una mejor solución, será bienvenida.


Ojalá que esto te funcione =)



Editado:
La solución de carmagedon parece tener lógica y es más sencilla de hacer. Saludos =)
__________________
Mis dibujos: Click Aquí
  #4 (permalink)  
Antiguo 23/07/2007, 20:05
 
Fecha de Ingreso: abril-2006
Mensajes: 43
Antigüedad: 18 años
Puntos: 1
Re: Ayuda!!!!

Gracias carmagedon y ghosthead-nebula por sus respuestas. Esta son muy buenas y de mucha ayuda para mi...
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 12:33.