Geschiedenis website * Automatisering foto * Automatisering weetje * Auteursrechten * Diverse HTML-codes * Heerenveen

Automatisering

Elke dag een ander weetje

Bepaalde zaken op deze website, en dan met name de hoofdpagina, worden geautomatiseerd. Dit gebeurt in PHP. Voorwaarde voor het gebruik van PHP is dat de server het dient te ondersteunen en dat de extensie van de HTML-pagina .php moet zijn (en dus niet .htm of .html).
Zo is er om de zoveel tijd een ander weetje uit het glossarium te lezen. De tekst uit dit glossarium staat ergens op de server geparkeerd en met behulp van de INCLUDE-opdracht kunnen we op bepaalde tijden bepaalde teksten aanroepen. Zie onderstaand als voorbeeld.



Voor de rest gebruiken we eenzelfde soort methodiek als bij de foto's. De PHP-code voor 1 januari ziet er dan als volgt uit.



De voorwaarden betekenen dat op 1 januari in een bepaald tijdvak een bepaald weetje wordt vertoond. Voor meer uitleg zie bij foto's.

Het is ondoenlijk om al deze code in notepad uit te schrijven. Daarom wordt één en ander voorbewerkt in MS Excel. We geven de kolommen A1 t/m N1 in de eerste rij een omschrijving om ze te herkennen. Eventueel kunnen we er ook een filter overheen leggen om een filter te maken indien nodig.
Celnummer Item
A1 #Datum
B1 #Beginuur
C1 #Einduur
D1 #Internetpagina
E1 #Titel
F1 #Quote

Als voorbeeld voor de eerste regel in het bovenstaande tekstvak bereiden we de kolommen A2 t/m F2 in de tweede rij voor:
Celnummer Item
A2 01.01
B2 '00
C2 '06
D2 aggloliner.php
E2 Weetjes uit het glossarium
F2 "

Toelichting bij de cellen B2 en C2: hier hebben we een enkele quote (') aan het begin geplaatst om zo een voorloopnul te forceren.

In de volgende vier cellen (G2 t/m J2) gaan we de formules samenstellen, zodat we de gewenste PHP-code kunnen creëeren:
Celnummer Item
G2 =TEKST.SAMENVOEGEN("<?php if (date('m.d') == ";A2;" && date('H') >= ";B2;" && date('H') < ";C2;") : ?><p>")
H2 =TEKST.SAMENVOEGEN("<font size=";F2;2;F2;">OV-weetje tussen ";B2;":00 en ";C2;":00 uur:</font><br>")
I2 =TEKST.SAMENVOEGEN("<font size=";F2;3;F2;"><b>";E2;"</b></font></p><br>")
J2 =TEKST.SAMENVOEGEN("<?php include 'gloss/text/";D2;"';?>")


tekst: autobussenwebsite.nl

De gecreëerde PHP-code kunnen we nu eenvoudig in een notepadbestand (de eigenlijke webpagina) plakken. We kunnen eventueel nog met een hexadecimale editor de tabstops omzetten naar enters (we vervangen hierbij de hexcode 09 door 0D 0A), maar dit is niet strikt noodzakelijk. HTML- en PHP-code kan ook met tabstops overweg.
We hebben dus nu voor één regel laten zien hoe we dit in Excel kunnen voorbewerken. Het makkelijke hiervan is dat aanpassingen hierop makkelijker zijn te realiseren. Als we voor een bepaalde dag ineens een andere foto of tekst willen laten zien, kunnen we voor die dag de veranderingen in Excel doorvoeren en de code in de webpagina plakken.
Let wel: bovenstaande uitleg betreft hier één regel. Als we elke dag opsplitsen in zes tijdvakken, waarbij én jaar maximaal 366 dagen heeft, hebben we dus in totaal 2196 regels. En dan nog de laatste twee regels met ELSE en ENDIF.
Deze hebben we in het Excel-bestand helemaal onderaan geplaatst in de cellen J2198 en J2199, zodat die bij het plakken in de webpagina niet worden vergeten. Als we een groffere tijdsindeling hebben, bijvoorbeeld een dagindeling van vier tijdvakken, is het aantal regels uiteraard minder. Tot slot nog de mededeling dat bij een gewoon jaar (dus een niet-schrikkeljaar) 29 februari wordt overgeslagen.
tekst: autobussenwebsite.nl