Foros del Web » Programando para Internet » PHP »

ayuda con un par de dudas

Estas en el tema de ayuda con un par de dudas en el foro de PHP en Foros del Web. estoy haciendo una pagina de clasificados, los que necesito que se borren de la base de datos mysql cuando alla pasado el tiempo que el ...
  #1 (permalink)  
Antiguo 22/02/2003, 15:49
Usuario no validado
 
Fecha de Ingreso: enero-2002
Ubicación: Bueno Aires
Mensajes: 156
Antigüedad: 22 años, 3 meses
Puntos: 0
ayuda con un par de dudas

estoy haciendo una pagina de clasificados, los que necesito que se borren de la base de datos mysql cuando alla pasado el tiempo que el usuario le determino cuando lo escribio---
ademas hay una seccion en la cual el usuario puede guardar los anuncios que le interesan...

la pregunta es como puedo hacer, mas o menos, para hacer esto...

muchas gracias desde ya!!!!!!
  #2 (permalink)  
Antiguo 22/02/2003, 16:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Tendrias q ejecutar una consulta tipo:

DELETE FROM tabla WHERE campo_fecha > NOW()

Con eso borrarias todos los registros que el campo_fecha sea mayor que la fecha actual .. si necesitas q sea de algun registro en cuestion tipo "usuario" .. ya sabes q tendras q usar algun otro condicional tipo:

.. AND id_usuario='$id_usuario'

NOW() --> fecha de hoy ..(del servidor Mysql . .ojo con eso )
campo_fecha --> suponemos q es el campo q determina el usuario y que es de tipo DATE o DATETIME ...

El único "problema" es determinar cuando ejecutar esa consulta q hará el proceso.

Lo puede ejecutar en alguna de las paginas (o llamadas a scripts) q hagas frecuentemente .. Pero lo ideal sería que lo ejecutaras por ejemplo una vez al dia .. para deberias correrlo bajo un Cron tab de linux .. o como una taréa programada de Windows (si tienes acceso al S.O. del servidor .. ) si no es así .. tendras q optar por la primera solución ...

se me olvidó:

Para la opcion de guardar los anuncions q le interesen .. en esa tabla de "anuncios" podrias usar un campo extra a modo de "flag" (bandera, estado) .. que diga algo tipo: "guardar" o "no guardar" ... En tal caso la consulta anterior tendrias q añadirle dicho "condicional":

DELETE FROM tabla WHERE campo_fecha > NOW() AND almacenar='no guardar'

Y en tus consultas .. filtrar por ese campo "almacenar" .. por si todavía no se ha ejecutado el proceso de borrado de esos registros .. (sería otro AND almacenar="guardar" .. a la hora de visualizarlo .. de hacer tus SELECT .. )

Todo eso como consulta SQL .. como veras da mucho juego el SQL si lo usas ..


Un saludo,

Última edición por Cluster; 22/02/2003 a las 16:23
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 17:26.