Computer: Mein Wandkalender mit PHP (aus Wiki)

Gehört zu: Aufgabenplanung
Siehe auch: PHP, TagesLaenge

Stand: 17.3.2023

Mein Wandkalender mit PHP (aus Wiki)

Wandkalender – Kalenderdruck – Kalenderblätter – Kalenderberechnung

Hier als Demo beim WebProvider durch Strato: Kalenderberechnung mit PHP

Das PHP-Script “Kalender” von Jürgen Galupki wurde optisch ein wenig modifiziert, so das man Monatsblätter so erstellen kann, wie sie bei den so beliebten Drei-Monats-Wandkalendern aussehen.

Dieses hervorragende Script von Jürgen Galupki, berechnet alle Feiertage, Kalenderwochennummern, Mondphasen, Sonnenaufgang und Sonnenuntergang, wobei die geografischen Koordinaten des Bezugsorts gewählt werden können.

Installation

Veränderungen für PHP8

Mein Web-Provider Strato hat im Jahre 2023 von PHP 7.4 auf PHP 8.0 umgestellt und damit funktionierten die tollen Kalender-PHP-Formeln nicht mehr.

Auf die Schnelle – damit es überhaupt etwas zeigt – habe erst einmal folgende Änderungen gemacht:

1. Das Modul “sonnemond.class.php” wiederhergestellt – es war irgendwie durch etwas total anderes ausgetauscht.

2. Im Modul “sonnemond.class.php” erschien eine Fehlermeldung:
Fatal error: Array and string offset access syntax with curly braces is no longer supported in C:\Data\htdocs\kalender.kr8.de\lib\sonnemond.class.php on line 44
Zeile 44 geändert von  if ( $was{0}==”r” )  in if ( $was[0]==”r” )

2. Im Modul “feiertage.class.php” habe ich die Zeile 171 auskommentiert: # if ($this->ft[$k][“dif”]!=0) {
und sie wie folgt modifiziert:   if (is_numeric($this->ft[$k][“dif”])) {
und das sonst sie zu einem PHP-Laufzeitfehler in Zeile 173 führte:
Fatal error: Uncaught TypeError: Unsupported operand types: float + string in C:\Data\htdocs\kalender.kr8.de\lib\feiertage.class.php:173 Stack trace: #0 C:\Data\htdocs\kalender.kr8.de\monatsblatt.php(225): feiertage->Kalenderjahr(2023.0) #1 {main} thrown in C:\Data\htdocs\kalender.kr8.de\lib\feiertage.class.php on line 173
…….. $this->ft[$k][“jt”] += $this->ft[$k][“dif”];
Dies betrifft wohl “nur” die Berechnung des Julianischen Datums, welches för die Bahnberechnungen bei Sonne und Mond benötigt wird. Diese hatte ich ohnehin schon ausgeschaltet.

3. Die Datei feiertage.csv habe ich mit Hilfe meines Editors “notepad++” von der Kodierung ASCII in UTF-8 konvertiert. Dann kamen die deutschen Sonderzeichen wieder richtig.

4. Die Datei hilfe.php habe ich mit Hilfe meines Editors “notepad++” von der Kodierung ASCII in UTF-8 konvertiert. Dann kamen die deutschen Sonderzeichen wieder richtig.

5. Die Datei datumscalc.php habe ich mit Hilfe meines Editors “notepad++” von der Kodierung ASCII in UTF-8 konvertiert. Dann kamen die deutschen Sonderzeichen wieder richtig.

6. In “datumscalc.php” scheint die PHP-Verarbeitung von HTML-Forms nicht richtig zu funktionieren….

 

— Main.DietrichKracht – 29 May 2004

Retrieved from my Wiki