login  Naam:   Wachtwoord: 
Registreer je!
 Forum

na 21 dagen verwijderen

Offline kenzo - 02/05/2009 14:19
Avatar van kenzoPHP beginner Hallo,

Ik kan op de website een nieuwe brochure uploaden. Als dat gebeur is komt het boekje op de voorpagina te staan (een melding).

Hoe kan ik nu het beste een script maken dat na 21 dagen deze melding verwijdert wordt?

dus het boekje uploaden gaat automatisch via een form en dan zet ik dus een melding in de database.

Deze moet dus na 21 dagen verwijdert worden.

Moet dit met een cronjob of heeft iemand een ander idee?

9 antwoorden

Gesponsorde links
Offline Koen - 02/05/2009 14:36
Avatar van Koen PHP expert Een cronjob is inderdaad de beste oplossing 
Offline Bart - 02/05/2009 14:37
Avatar van Bart PHP expert Bij het uploaden van de brochure een timestamp meegeven in de DB, hieraan kun je zien wanneer deze gepost is. Vervolgens een cronjob (die elke nacht 0:00 draait) maken die controleer of de timestamp ouder is dan 21 dagen.
Offline kenzo - 02/05/2009 14:39 (laatste wijziging 02/05/2009 15:09)
Avatar van kenzo PHP beginner jah, ok... dan doe ik toch maar de cronjob

ik kan ook bijvoorbeeld in de database bij de melding een veld dag zetten

dag is standaard 0 en met de cronjob wordt er gewoon 1 bij opgeteld....

dag 1 is dus 1, dag 2 is dus 2 etc...

en met een if:

  1. if(dag <= 21)
  2. {
  3. echo "$melding");
  4. }
  5. else
  6. {
  7. delete from...
  8. //-- edit: ook korte stukjs met tags aub
  9. }



dit is makkelijker dan met datums... alleen weet ik niet of dit niet te traag wordt?
Offline Martijn - 02/05/2009 15:08
Avatar van Martijn Crew PHP neuh, daz 2 queries
Offline kenzo - 02/05/2009 15:32
Avatar van kenzo PHP beginner
DeviourSoul schreef:
neuh, daz 2 queries


Wat bedoel je nu? dat het niet uit maakt omdat het maar 2 queries zijn of dat het trager wordt omdat het 2 queries zijn?



// en sorry dat ik geen tags gebruikt heb
Offline Martijn - 02/05/2009 16:07
Avatar van Martijn Crew PHP dat t niet zwaar is voor je db. Die 2 dingejtes per dag moet ie wel kunnen trekken denkje nie?
Offline kenzo - 02/05/2009 16:21
Avatar van kenzo PHP beginner jawel ik denk het ook, maar ik vraag het even na... niet dat ik iets maak wat niet goed werkt.


bedankt iig
Offline svm - 02/05/2009 22:31 (laatste wijziging 02/05/2009 22:44)
Avatar van svm PHP ver gevorderde Waarom niet gewoon vóór het ophalen van het overzicht DELETE FROM TABLE WHERE `time` < ". (time() - 24*3600*21) ." ?
Als je daarna het overzicht selecteert is het ook verwijderd.
Cronjobs kan uiteraard ook, maar dit is in veel gevallen niet nodig (dat php voldoende is).
(zelf gebruik ik bijv. cronjobs om mailtjes naar jarigen te sturen en bcc naar mij ter herinnering ).
Offline vinTage - 03/05/2009 03:38 (laatste wijziging 03/05/2009 03:41)
Avatar van vinTage Nieuw lid Zonder database kan ook 

  1. if(file_exists("mapnaam/".date("Y-m-d").".pdf"))
  2. {
  3. unlink("mapnaam/".date("Y-m-d").".pdf");
  4. }


Je moet je pdf dan dus (stel dat je hem op 1 jan 2010 upload) 2010-01-22 .pdf noemen tijdens het uploaden.
Verder laat je gewoon elke dag even een cronjobje passeren.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.209s