Hoe bouw je een kalender in PHP?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

-- evilrabbit --

-- evilrabbit --

30/12/2017 11:05:37
Quote Anchor link
Kan iemand mij vertellen hoe ik een kalender kan maken in PHP. "Vandaag" zou ik graag gehighlight zien en in de titel bovenaan zou de maand moeten wijzigen al naargelang de maand waarin je de pagina opent.

Bijgevoegde afbeelding toont mijn gewenste output.
Afbeelding

Edit:
Titel aangepast van 'kalender' naar 'Hoe bouw je een kalender in PHP?'
Gewijzigd op 30/12/2017 14:49:33 door - Ariën -
 
PHP hulp

PHP hulp

05/05/2024 19:36:38
 
Jan R

Jan R

30/12/2017 11:17:01
Quote Anchor link
Kan je iets meer vertellen wat de bedoeling is? als je enkel dit wilt is dit eenvoudig maar wat is de achtergrond liggende bedoeling?

Google vind 1.8M hits op kalender scripts;

Jan
 
-- evilrabbit --

-- evilrabbit --

30/12/2017 11:23:33
Quote Anchor link
Ik heb een array waar ik de namen van de dagen in heb opgeslagen (dus "ma", "di", "wo",...).

Het lukt me echter niet om de juiste dag van de maand (1, 2, 3,...) te koppelen aan de juist weekdag ("ma", "di", "wo",...)

Op Stackoverflow werd ik bijna uitgescholden omdat ik het niet begreep, vandaar dat ik het hier nog eens probeer...
 
- Ariën  -
Beheerder

- Ariën -

30/12/2017 11:24:10
Quote Anchor link
Als dit aan een formulierelement is verbonden, dan heet dit ook een 'datepicker'.

Want hoe zie je jouw kalender visueel geïntegreerd in je site? Of is dit een schoolopdracht?
Gewijzigd op 30/12/2017 11:25:49 door - Ariën -
 
-- evilrabbit --

-- evilrabbit --

30/12/2017 11:26:49
Quote Anchor link
- Ariën - op 30/12/2017 11:24:10:
Als dit aan een formulierelement is verbonden, dan heet dit ook een 'datepicker'.

Want hoe zie je jouw kalender visueel geïntegreerd in je site? Of is dit een schoolopdracht?


Dit is een "extra oefening" voor mijn avondschool...
Hoewel ik al uren heb gestaard naar mijn code, lukt het me niet
 
- Ariën  -
Beheerder

- Ariën -

30/12/2017 11:30:50
Quote Anchor link
Zomaar wat tutorials:
https://www.startutorial.com/articles/view/how-to-build-a-web-calendar-in-php

https://www.thoughtco.com/simple-php-calendar-2693849

http://pixelcode.co.uk/tutorials/php/creating-a-calendar-in-php/

Je moet eerst bepalen welke dag de eerste van de maand is en welke de laatste en dan is het een kwestie van doortellen tot het einde van de maand.
Gewijzigd op 30/12/2017 11:34:37 door - Ariën -
 
-- evilrabbit --

-- evilrabbit --

30/12/2017 11:44:13
Quote Anchor link
- Ariën - op 30/12/2017 11:30:50:
Zomaar wat tutorials:
https://www.startutorial.com/articles/view/how-to-build-a-web-calendar-in-php

https://www.thoughtco.com/simple-php-calendar-2693849

http://pixelcode.co.uk/tutorials/php/creating-a-calendar-in-php/

Je moet eerst bepalen welke dag de eerste van de maand is en welke de laatste en dan is het een kwestie van doortellen tot het einde van de maand.


Bedankt Ariën, 2 van die tutorials heb ik nog niet bekeken... Dat ga ik eerst even doen!
Gewijzigd op 30/12/2017 11:50:36 door -- evilrabbit --
 
Frank Nietbelangrijk

Frank Nietbelangrijk

31/12/2017 03:52:56
Quote Anchor link
Kalender scripts zijn voor een aanvangend php-er best wel pittig. Kijkend naar jouw voorbeeld zijn er een aantal hobbels te nemen. Het lijkt me dan ook belangrijk om in een aantal stappen te werken.

a) bepaal welke maand en jaar de kalender moet laten zien.
b) maak een functie die berekend op welke dag van de week de 1e van deze maand valt. Hint: gebruik date('N') - 1; Je krijgt dan een 0 voor maandag en een 6 voor zondag).
c) maak een functie die het aantal dagen van de maand bepaald. (dit is 28, 29, 30 of 31)
d) Maak van $dag een negatief getal, 0 of 1 met een formule: $dag = 1 - [de dag waarop de 1e van deze maand valt]. In jouw voorbeeld valt de eerste dag op vrijdag. Je zou dan met $dag = -3 moeten starten.
e) maak een while lus die pas beëindigd wordt als de teller $dag >= aan het aantal dagen in deze maand. (deze lus wordt straks net zo vaak doorlopen als er regels zijn in de kalender)
f) maak BINNEN IN de while lus een for lus die van 0 t/m 6 telt
g) maak in de for lus een if/else statement die er voor zorgt dat er een lege table cell gemaakt wordt als $dag kleiner is dan 1 of groter is dan [laatste dag van de maand] en anders een table cell met de waarde van $dag.
h) zorg dat aan het einde in de for lus $dag met 1 verhoogd wordt
i) zet de nodige HTML code nog boven en onder de for lus.
Gewijzigd op 31/12/2017 03:58:04 door Frank Nietbelangrijk
 
Jan R

Jan R

31/12/2017 09:44:48
Quote Anchor link
Je kan je array koppelen met de parameter N in de functie date
http://php.net/manual/en/function.date.php
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.