Version [3811]
Dies ist eine alte Version von WikkaWiki erstellt von WojciechLisiewicz am 2022-06-14 20:35:43.
Inhaltsverzeichnis des Artikels
A. Umstieg auf PHP 8.0
1. Wakka.class Zeile 336
a. Problem
b. Lösung
2. Wakka.class Zeile 432
3. Fehler, die von selbst vers...
4. Weitere Fehler in den Komme...
5. Sporadische Fehler auf manc...
a. Problem: obsolet gewordene ...
b. Lösung
c. Weitere ähnliche Fälle
6. Fehler nach Anmeldung
a. Problem
b. Lösung
7. Fehler in action PageIndex ...
1. Wakka.class Zeile 336
a. Problem
b. Lösung
2. Wakka.class Zeile 432
3. Fehler, die von selbst vers...
4. Weitere Fehler in den Komme...
5. Sporadische Fehler auf manc...
a. Problem: obsolet gewordene ...
b. Lösung
c. Weitere ähnliche Fälle
6. Fehler nach Anmeldung
a. Problem
b. Lösung
7. Fehler in action PageIndex ...
Wikka Wiki
Konfiguration, Einstellungen, Installation
Für erste Schritte bei Updates Originaldokument beachten:
- http://docs.wikkawiki.org/UpgradeNotes
Weitere sinnvolle Quellen:
- http://wikkawiki.org/FilesManagementSolution
- http://wikkawiki.org/WikkaMenulets
- http://docs.wikkawiki.org/UpgradeNotes
Weitere sinnvolle Quellen:
- http://wikkawiki.org/FilesManagementSolution
- http://wikkawiki.org/WikkaMenulets
Die von uns eingesetzte Software braucht auch manchmal einen kleinen Anschub - deshalb die Dokumentation der Anpassungen / Korrekturen im WikkaWiki:
Zunächst eine kurze Sammlung zum Informationsarchiv aus früheren Generationen (vor 2021):
- eine besser aussehende URL mit mod_rewrite von Apache
- (halbwegs) chronologische Liste der jemals durchgeführten Arbeiten am System
- automatische Links auf Normen
- Sprachen für das UI
- Baumdarstellung für Kategorien
Und hier eine geordnete Darstellung aktuell (2021)
A. Umstieg auf PHP 8.0
Grundlage der Migration ist WikkaWiki 1.4.2, die für PHP 7.X vorgesehen ist (jedenfalls mit 7.2 getestet wurde). Zahlreiche Probleme in der Datenbanksteuerung und bei einigen Startskripten unter PHP 8 konnten schnell beseitigt werden. Das Problem war insbesondere das geänderte Datenbankmodell in PHP.
Achtung: zahlreiche Fehler könnten womöglich vermieden werden, wenn eine niedrigere Debugging-Stufe in PHP eingestellt worden wäre - bei Berücksichtigung der Fehler und deren Bearbeitung wird der Code wohl qualitativ besser sein.
Als das System dann einigermaßen installiert werden und danach starten konnte, mussten folgende Schritte unternommen werden:
1. Wakka.class Zeile 336
Warning: Undefined variable $result in /usr/local/www/wdb/libs/Wakka.class.php on line 336
a. Problem
Offenbar wird die Funktion function Query($query, $params=NULL, $dblink=) auch dann genutzt, wenn sie keinerlei vernünftige Ergebnisse produziert.
b. Lösung
In Zeile 336 schlicht ändern:
=> aus return $result;
=> Folgendes machen: if (isset($result)) return $result;
=> Folgendes machen: if (isset($result)) return $result;
2. Wakka.class Zeile 432
Warning: Undefined variable $data in /usr/local/www/wdb/libs/Wakka.class.php on line 432
Es hat das Gleiche geholfen, wie schon bei Zeile 336:
=> aus return $data;
=> mach if (isset($data)) return $data;
=> mach if (isset($data)) return $data;
3. Fehler, die von selbst verschwunden waren
Die nachstehenden Fehler sind nach Korrektur der Punkte oben von alleine verschwunden:
Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/wdb/libs/Wakka.class.php:336) in /usr/local/www/wdb/libs/Wakka.class.php on line 5285
und:
Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/wdb/libs/Wakka.class.php:336) in /usr/local/www/wdb/libs/Wakka.class.php on line 5287
4. Weitere Fehler in den Kommentaren
In den Kommentaren werden in der Regel folgende Fehler angezeigt:
Warning: Trying to access array offset on value of type null in /usr/local/www/wdb/handlers/show/show.php on line 163
Eigentlich zog sich hier die Befehlskette über zwei Zeilen und sah so aus:
if ((isset($_SESSION['show_comments'][$tag]) && $_SESSION['show_comments'][$tag] != COMMENT_NO_DISPLAY) || ($user['show_comments'] == 'Y'))
Der Wert $user musste noch mal vor Abfrage auf Existenz geprüft werden:
if ((isset($_SESSION['show_comments'][$tag]) && $_SESSION['show_comments'][$tag] != COMMENT_NO_DISPLAY) || ($user && $user['show_comments'] == 'Y'))
5. Sporadische Fehler auf manchen Seiten
(Beispiel: FormattingRules) => schwerwiegend, da sich gar keine Seite zeigt und nur die Fehlermeldung:
Fatal error: Array and string offset access syntax with curly braces is no longer supported in /usr/local/www/wdb/3rdparty/core/safehtml/classes/safehtml.php on line 95
a. Problem: obsolet gewordene Schreibweise mit { oder }
Siehe hier:
https://www.php.net/manual/de/migration80.incompatible.php
an der Stelle unter folgender Überschrift:
Support for deprecated curly braces for offset access has been removed.
b. Lösung
Es reicht wohl aus, Arrays mit [] statt mit {} zu schreiben...
c. Weitere ähnliche Fälle
=> 3rdparty/core/safehtml/classes/HTMLSax.php on line 195 + 343
6. Fehler nach Anmeldung
Nach der Anmeldung als User (hier konkret der Admin) kamen weitere Fehler vor:
Warning: Undefined variable $sessionid in /usr/local/www/wdb/libs/Database.lib.php on line 175 gleich 2x...
Später verschwanden Sie aber wieder ohne Änderungen. Vielleicht mit Korrektur zu den Zeilen 336 / 432. Danach aber wieder aufgetaucht...
a. Problem
Nach Anmeldung als registrierter Benutzer taucht überall die Meldung auf:
Warning: Undefined variable $sessionid in /usr/local/www/wdb/libs/Database.lib.php on line 175 und noch mal
Warning: Undefined variable $username in /usr/local/www/wdb/libs/Database.lib.php on line 175
b. Lösung
In Datei Database.lib.php die Variablen $sessionid und $username entsprechend definiert (nun 2 neue Zeilen 168/169):
if(!isset($sessionid)) $sessionid = ;
if(!isset($username)) $username = ;
if(!isset($username)) $username = ;
Fehlermeldung war:
Warning: Undefined variable $name in /usr/local/www/wdb/libs/Wakka.class.php on line 4131
Lösung:
in Zeile 4108 Variable definiert: if(!isset($name)){$name = ;}
Zeile 4131 verschiebt sich in 4134.
CategoryITKnowledge
Auf dieser Seite sind keine Kommentare vorhanden