24. november 2009 - 20:03Der er
8 kommentarer og 1 løsning
Hjælp til en ugekalender
Hej eksperter. Jeg skal til at lave en kalender som kan vise 1 uge ad gangen. Den skal "snakke" med en database. Det skal bruges til et udlejnings system. Så der skal være bil 1, bil 2 etc. ned af X-aksen og dage ad Y-aksen. Jeg har brudt mit hoved i et par dage og jeg kan simpelthen ikke finde en løsning på hvordan jeg skal gøre.. Er der nogler der har nogle ideer til en start. Den største udfordring for mig er at få lavet den del der skal vise ugen med datoer. Håber I forstår hvor jeg gerne vil hen.
Jeg vil anbefale dig til at læse lidt om php funktionerne date() og strtotime(). Med date() kan du få alle oplysninger du kunne ønsker dig om et tidsstempel. Med strtotime() kan du lave nye tidsstempler. Fx kan du skrive strtotime(+7 days) for at hoppe en uge frem. Det giver forhåbentlig lidt inspiration.
Jeg har læst en del på det, men kan ikke rigtigt finde en løsning... Jeg er gået total fast..
Jeg skal have det lavet så alle uger starter med mandag og slutter fredag.
så hvis jeg finder datoen i dag og hvad nr. dagen i denne uge er date('N');
så skal den ud fra i dag regne ud hvor mange felter/dage der skal sættes ind før og efter dagen i dag, f.eks i en table. Derfra skal den så sætte datoen i felterne...
Når du så skal lave navigationen til senere og tidligere uger, vil jeg anbefale at du regner datoen ud for forrige mandag og næste mandag, og sender dem som parametre i linket til forrige og næste mandag, og hvis disse så er sat, så bruge disse til at regne ud hvilket dag du skal starte på.
okay... jeg har prøvet at få den til at smide både dato og ugenavn i samme løkke... Men den laver mere end 7 bokse. Det er sq lidt for lang tid siden jeg har rodet med det..
Er der nogle der kan se fejlen, og tak for hjælpen indtil videre
Det er fordi den inderste løkke kun skal køres igennem 7 gange, og det gør den jo i forvejen. Hvis du havde skrevet 7 i den yderste, så ville du køre den inderste 7*7 = 49 gange
Men det ser godt ud :)
Du kunne evt. lave en lille ændring. Sæt det her array ind i starten:
Det skyldes at du har 2 for løkker, du behøver kun den inderste. Dvs slet den yderste, for hvis de begge kører 7 gange, så kører den inderste 7*7 = 49 gange.
Men det ser godt ud :)
Du kunne evt opbevare dine dage i et array, som du definerer uden for løkken:
Stenern... troede ikke det første svar gik igennem, nå, de er ens de to sidste svar :D
Synes godt om
Ny brugerNybegynder
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.