Avatar billede sotec Nybegynder
09. oktober 2004 - 19:38 Der er 6 kommentarer og
1 løsning

Fjern links efter x-antal dage uden cron?

Jeg påtænker at lave en funktion på min side hvor folk kan poste et link, men det skal kun være aktivt i 5 dage.

Kan jeg gøre sådan at der afvikles en funktion hver gang siden besøges som kigger på datoen for oprettelse af links?
Avatar billede leif Seniormester
09. oktober 2004 - 19:44 #1
Lidt teori, når de poster linket sætter du samtidig dags dato, du tjecker så hver gang du viser linksne, om linket er ældre end 5 dage, hvis de er skal de ikke vises.
Avatar billede Slettet bruger
09. oktober 2004 - 20:59 #2
$dag = time()-60*60*24*5
mysql_query("DELETE FROM tabel WHERE dato >". $dag) or die(mysql_error());
Avatar billede Slettet bruger
09. oktober 2004 - 20:59 #3
og ja.. du skal self sætte et dato felt i db
Avatar billede coderdk Praktikant
10. oktober 2004 - 14:14 #4
Eller i ren SQL:

DELETE FROM tabel WHERE NOW() - DATE_SUB( CURDATE(), INTERVAL 5 DAYS ) > datofelt

Og som leif skriver, kør dette før siden genereres...

Hvis du ikke vil slette, men kun vil tage de links der er mindre end 5 dage gamle, kan det gøres på samme måde:

SELECT * FROM tabel WHERE datofelt >= DATE_SUB( CURDATE(), INTERVAL 5 DAYS )
Avatar billede coderdk Praktikant
10. oktober 2004 - 14:14 #5
DELETE FROM tabel WHERE NOW() - DATE_SUB( CURDATE(), INTERVAL 5 DAYS ) > datofelt

Skulle naturligvis være:

DELETE FROM tabel WHERE DATE_SUB( CURDATE(), INTERVAL 5 DAYS ) > datofelt
Avatar billede sotec Nybegynder
17. december 2004 - 09:23 #6
Svar mig :-)
Avatar billede coderdk Praktikant
17. december 2004 - 15:08 #7
soytainly! ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester