27. oktober 2008 - 20:38Der er
15 kommentarer og 3 løsninger
Vise næste events fra min kalender?
Hej, Jeg har en database der er bygget op som dette: ID | Navn | Dato | Måned | år 1 Emil 23 5 2007 60 Mette 23 8 1981 4 Søren 24 5 1974
Jeg vil nu gerne have lavet en sql sætning der trækker de næste 10 events ud fra min kalender fra dags dato...Og hvis der kun er eks. 7 events tilbage i år, så skal den gerne tage de 3 næste fra næste år. Det sidste her er dog ikke et krav, men ville være dejligt at have med...
Jeg har gang i en sql sætning der nu ser sådan her ud: SELECT * FROM kalender WHERE maaned >= '".date("m", time())."' AND dato >= '".date("d", time())."' ORDER BY maaned, dato LIMIT 0,10
Jeg ville skynde mig at lave et nyt felt i tabellen, som er af typen DATE, og så køre en UPDATE for at få standard dato format lagt ind. Det er langt nemmere at rode med datoer hvis du bruger standard formatet YY-MM-DD
showsource: Vil du så sætte datoen sammen i et felt og så bare sortere på det? Men giver det ikke samme problem som jeg har nu?
coderdk: Har lige prøvet denne sql: SELECT *, CONCAT('aar','maaned','dato') AS datoen FROM kalender WHERE datoen >= DATE_FORMAT(NOW(),'%Y%m%d') ORDER BY datoen LIMIT 0,10
Men den siger: Unknown column 'datoen' in 'where clause'
Som du kan se på forsiden af min side, så tager den fint nok 10 entries med ud fra databasen på den sql sætning du lavede, men det er vist ikke helt de 10 rigtige...Det er meget blandede datoer den tager med ud, og ikke de 10 næste datoer ud fra dato der er idag...
Jeg har smidt den sql ind som du har givet mig, men kan se på forsiden af min side, at der er entries tilbage fra maj måned, og det er jo helt forkert. Den skulle gerne tage det fra dags dato og så 10 events frem...
showsource, Ja, men jeg tror jeg tænkte på unix timestamp ;) Begrænsningerne i DATETIME er nok ikke reelle begrænsninger i denne forbindelse (år 1000-9999) :-D
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.