Foros del Web » Programando para Internet » PHP »

borrar dato después de 7 días

Estas en el tema de borrar dato después de 7 días en el foro de PHP en Foros del Web. saludos buen día hoy tengo un pequeño problema necesito que se ejecute este código en automático es decir que tome la fecha del servidor y ...
  #1 (permalink)  
Antiguo 21/05/2013, 10:06
 
Fecha de Ingreso: febrero-2013
Mensajes: 66
Antigüedad: 11 años, 2 meses
Puntos: 1
borrar dato después de 7 días

saludos buen día hoy tengo un pequeño problema necesito que se ejecute este código en automático es decir que tome la fecha del servidor y borre una fecha atras 7 días pero no ce como realizar esta tarea

Código PHP:
Ver original
  1. <?php
  2.  
  3. $conexion=mysql_connect("localhost","root","123");
  4. mysql_select_db("hahaha",$conexion);
  5.  
  6. $sql = "DELETE FROM ticket WHERE FECHA =" .$_POST['fecha'];
  7. $result = mysql_query($sql);  
  8.  
  9. echo $sql;
  10. @mysql_close($conexion);
  11. ?>
  #2 (permalink)  
Antiguo 21/05/2013, 10:57
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: borrar dato después de 7 días

Pues primero tienes que hacer tu consulta SQL puedes usar DATE_SUB para eso, pero depende del tipo de campo que sea tu fecha.

Luego para que sea "automático" debes de programar esa consulta SQL en PHP y ejecutarla con un Cron para que trabaje cada día.

Saludos.
  #3 (permalink)  
Antiguo 21/05/2013, 11:03
 
Fecha de Ingreso: febrero-2013
Mensajes: 66
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: borrar dato después de 7 días

saludos gracias por tu comentario tengo un campo llamado fecha el cual tiene este formato 2013-05-18 pero no ce como usar la sentencia DATE_SUB

y no ce como sera eso
  #4 (permalink)  
Antiguo 21/05/2013, 11:13
 
Fecha de Ingreso: febrero-2013
Mensajes: 66
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: borrar dato después de 7 días

Código PHP:
Ver original
  1. <?php
  2.  
  3. $sql= " SELECT datos ,DATE_SUB(OrderDate,INTERVAL 5 DAY) AS SubtractDate
  4. FROM Orders";
  5.  
  6. ?>
pero como sabrá cron job lo que hay que eliminar?
  #5 (permalink)  
Antiguo 21/05/2013, 11:16
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: borrar dato después de 7 días

Cita:
Iniciado por lramirez Ver Mensaje
Código PHP:
Ver original
  1. <?php
  2.  
  3. $sql= " SELECT datos ,DATE_SUB(OrderDate,INTERVAL 5 DAY) AS SubtractDate
  4. FROM Orders";
  5.  
  6. ?>
pero como sabrá cron job lo que hay que eliminar?
El CRON-Job no lo sabe, es tu programación la que debe saberlo, tu lo debes programar para que funcione como quieras.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 21/05/2013, 11:23
 
Fecha de Ingreso: febrero-2013
Mensajes: 66
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: borrar dato después de 7 días

mi pregunta es como puedo darle la instrucción a CRON-Job la idea es olvidarme de esa tarea no ce si me puedan orientar un poco
  #7 (permalink)  
Antiguo 21/05/2013, 11:26
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: borrar dato después de 7 días

¿Al menos ya sabes lo que es un CRON-Job?

Por ahí podemos empezar.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 21/05/2013, 11:31
 
Fecha de Ingreso: febrero-2013
Mensajes: 66
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: borrar dato después de 7 días

ok solo se que es una herramienta que permite realizar tareas a determinado tiempo la verdad es que no ce mucho acerca de CRON-Job
  #9 (permalink)  
Antiguo 21/05/2013, 11:34
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: borrar dato después de 7 días

Pues primero deberías familiarizarte con la tecnología que piensas usar, es tu responsabilidad.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 21/05/2013, 11:54
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: borrar dato después de 7 días

Como te decía, son dos partes, el Cron Job le dices, "ejecuta este script todos los días a las 12pm", luego el script, que es el PHP que estas haciendo se va a levantar cada día a las 12pm, ahí dentro del script es donde debes de programar tu consulta y decirle, "busca todos los registros que tengan más de 7 días y los borras".
  #11 (permalink)  
Antiguo 21/05/2013, 12:20
 
Fecha de Ingreso: febrero-2013
Mensajes: 66
Antigüedad: 11 años, 2 meses
Puntos: 1
Respuesta: borrar dato después de 7 días

gracias a hora entiendo mas claro como debo de alizar esta tarea mil gracias
pero con respecto ami escrip asi lo tengo pero no realiza el borrado

Código PHP:
Ver original
  1. <?php
  2. $con=mysql_connect("localhost","root","");
  3.    if (!$con){die('ERROR DE CONEXION CON MYSQL:'. mysql_error());}
  4. /********* CONECTA CON LA BASE DE DATOS  **************** */
  5. $database = mysql_select_db("fact",$con);
  6. if (!$database){die('ERROR CONEXION CON BD:'.mysql_error());}  
  7.  
  8.  
  9. $sql= " SELECT fecha ,DATE_SUB(OrderDate,INTERVAL 4 DAY) AS SubtractDate
  10. FROM ticket";
  11. echo $sql;
  12. ?>
  #12 (permalink)  
Antiguo 21/05/2013, 12:41
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: borrar dato después de 7 días

Pues no, para ejecutar un query debes de usar mysql_query, luego el SQL para borrar es DELETE FROM, no SELECT.

Saludos.

Etiquetas: dato, mysql, select, sql
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 19:17.