Statistik |
Beiträge: 145.206 (Täglich: 18,66 )
Themen: 16.816
Mitglieder: 13.213
Neuestes Mitglied: Vorruhestaendler.
Ausl. d. letzten Minute: 71%
Ausl. d. letzten 5 Minuten: 90%
Ausl. d. letzten 15 Minuten: 88%
Aktulle Uhrzeit: 18:13
Freier Webspace: 4.13 TB
PHP-Version: 7.4.33
|
|
|
|
|
ToDo-> WoltLab Burning Board 2.3.6pl2: Update PHP-Version 8.x (Aktuell 8.3) |
|
ToDo-> WoltLab Burning Board 2.3.6pl2: Update PHP-Version 8.x (Aktuell 8.3) |
|
Hallo,
Dieses Thema beschäftigt sich ausschließlich mit dem Update auf PHP 8.x(zuvor: 7.x) für das "WoltLab Burning Board 2.3.6pl2".
Hinweise:
- Mache Sicherungskopien von den zu ändernden Dateien.
- Befolge die Anleitung von Oben nach Unten und überspringe, falls möglich, keinen einzigen Punkt.
- Durchsuche niemals die gesamte Datei, denn die Suchstellen sollten in den Dateien in der exakt gleichen Reihenfolge vorkommen, wie sie in der Anleitung vorkommen.
Sprich: Wird ein Punkt übersprungen und findet man einen Text, der der vorhergehenden Suchstelle entspricht oder ähnelt, ist diese Stelle wahrscheinlich NICHT gemeint.
Die Anleitung befindet sich im Anhang, da die Summe der Änderungen einen Beitrag sprengen würde.
Für bereits installierte Foren sollte auch der SQL-Befehl am Ende der Anleitung ausgeführt werden.
Die folgenden Dateien werden bearbeitet:
- /addreply.php
- /attachment.php
- /attachmentedit.php
- /board.php
- /calendar.php
- /editpost.php
- /forgotpw.php
- /formmail.php
- /global.php
- /index.php
- /login.php
- /memberslist.php
- /misc.php
- /modcp.php
- /newthread.php
- /pms.php
- /polledit.php
- /pollvote.php
- /print.php
- /profile.php
- /regimage.php
- /register.php
- /report.php
- /search.php
- /team.php
- /thread.php
- /threadrating.php
- /usercp.php
- /usergroups.php
- /wiw.php
- /acp/avatar.php
- /acp/bbcodes.php
- /acp/board.php
- /acp/database.php
- /acp/designpack.php
- /acp/global.php
- /acp/group.php
- /acp/icon.php
- /acp/index.php
- /acp/languagepack.php
- /acp/login.php
- /acp/logout.php
- /acp/memberslist.php
- /acp/misc.php
- /acp/options.php
- /acp/otherstuff.php
- /acp/profilefield.php
- /acp/ranks.php
- /acp/setup.php
- /acp/smilie.php
- /acp/style.php
- /acp/template.php
- /acp/threads.php
- /acp/users.php
- /acp/lib/admin_functions.php
- /acp/lib/class_adminsession.php
- /acp/lib/class_db_mysql.php
- /acp/lib/class_headers.php
- /acp/lib/class_language.php
- /acp/lib/class_options.php
- /acp/lib/class_parse.php
- /acp/lib/class_parsecode.php
- /acp/lib/class_query.php
- /acp/lib/class_smtp.php
- /acp/lib/class_templateparser.php
- /acp/lib/class_tpl_file.php
- /acp/lib/class_useronline.php
- /acp/lib/class_variableimport.php
- /acp/lib/class_wiw.php
- /acp/lib/class_zip.php
- /acp/lib/functions.php
- /acp/lib/inserts.sql
- /acp/lib/lite_updatex.sql
- /acp/lib/mod_functions.php
- /acp/lib/session.php
- /acp/lib/structure.sql
- /acp/templates/group_copy.htm
- /acp/templates/group_permissionsbit.htm
- /acp/templates/group_viewbit.htm
- /acp/templates/style_import.htm
- /acp/templates/threads_spinbit.htm
- /acp/templates/threads_spinclosebit.htm
- /acp/templates/threads_spindelbit.ht
- /acp/templates/threads_spinmovebit.htm
- /acp/templates/wordmatch_wordbit.htm
- /acp/archive/board.php
- /acp/archive/global.php
- /acp/archive/index.php
- /extra/acp_tpl.php
Es können nun noch Warnungen nach folgenden Schema erscheinen:
php: |
1:
|
Warning: Use of undefined constant name - assumed 'name' (this will throw an Error in a future version of PHP) in sample.php(x) : eval()'d code on line z |
|
Der Fehler tritt sehr wahrscheinlich im Zusammenhang mit einer "if"-Bedingung oder geschweiften Klammern in einem Template auf.
Für folgenden Lösungsansatz muss die Meldung genau obigen Schema entsprechen.
Wichtig sind nun folgende Teile der Meldung:
- name (Das ist der Text, der im Template gesucht werden wird)
- sample.php (Das ist die PHP-Datei in der das Template aufgerufen wird)
- x (Das ist die Zeile in der PHP-Datei wo das Template aufgerufen werden sollte)
- z (Das ist die Zeile im Template, wo sich der Suchtext befinden sollte)
Angenommen in der "sample.php" wird in Zeile x das Template mit Namen "sample" aufgerufen, dann wird in Zeile z dieses Templates nach "name" gesucht.
- Gefundene Zeile mit geschweiften Klammern
php: |
1:
|
Template-davor{$a[name]}Template-danach |
|
- Gefundene Zeile mit "if"-Bedingung
php: |
1:
|
Template-davor<if($a[name])><then>...Auswahl...</then></if>Template-danach |
|
Je nachdem welcher Fall auftritt, wird eine der beiden Lösungsvarianten gewählt:
- Lösung für Fundestelle mit geschweiften Klammern
php: |
1:
|
Template-davor{$a['name']}Template-danach |
|
- Lösung für Fundestelle mit "if"-Bedingung
php: |
1:
|
Template-davor<if($a['name'])><then>...Auswahl...</then></if>Template-danach |
|
Damit sollte euer "WoltLab Burning Board 2.3.6pl2" unter PHP 8.x (8.3) lauffähig sein.
Anmerkung:
Einige Stellen wurden bewusst nicht verändert, da eine mögliche resultierende Meldung auf andere Ursachen zurückzuführen ist und nicht auf einen Fehler des Forensoftware-Codes (Beispielweise: Falsche/Fehlerhafte Benutzerinteraktion).
Dennoch kann es durchaus sein, dass eventuelle notwendige Änderungen übersehen wurden und daher nicht enthalten sind.
__________________
Dieser Beitrag wurde 9 mal editiert, zum letzten Mal von Viktor: 16.06.2020 20:15.
|
|
16.07.2017 20:45 |
|
|
|
Hallo zusammen,
mittlerweile ist der Supportthread von Schrimm so groß geworden, das nützliche Informationen sowie korrigierte PHP-Dateien von diversen Hacks, Addons und Erweiterungen zum Thema WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x nicht mehr auf Anhieb gefunden werden.
Verweis auf den Ursprung:
-> ToDo-> WoltLab Burning Board 2.3.6pl2: Update PHP-Version 8.x (Schrimm)
-> Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 7x (Support-Thread)
-> Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8x (Support-Thread)
Für die Übersichtlichkeit werden alle geänderte Scripte und Codeteile hier gesammelt und aufgelistet.
Wer noch ein altes WBB mit der Version 2.3.3 hat muss zuvor die Updates bbis WBB 2.3.6pl2 durchführen!
-> Update WBB2.3.3-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x (Viktor)
Experimentelle angepasste WBB2 Templates (Achtung: mehrere zusammenhängende Beiträge!)
-> Templates WBB2-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x (Cleantex)
Angepasste WBB2 ACP-Templates
-> ACP-Templates WBB2-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x (Stine)
Kein ACP Zugriff bei SSL
-> ACP Zugriff bei SSL-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x (Slugger/Stine)
IN PLANUNG!
HACKS, ERWEITERUNGEN und CODETEILE von anderen, die WIEDERKEHREND sind!
GLIEDERUNG:
- Name des Hacks/Addons (Codeteile, PHP-Dateien, bei mehreren PHP-Dateien als ZIP-Datei etc.)
der erste Beitrag von Schrimm wurde geschlossen und alles was zu diesem Thema erstellt wurde, findet man nun in einem neuen Thread.
Bei Fragen und Problemen weiterhin diesen Supportthread nutzen!
->Support-> WoltLab Burning Board 2.3.pl2 - Update PHP-Version 8.x
Vielen Dank
__________________ Cu,
Slugger
|
Zitat: Egal wie du es machst, du machst es falsch! Also mache es einfach. |
|
|
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Viktor: 15.02.2021 22:36.
|
|
08.04.2020 11:24 |
|
|
|
Update PHP-Version 7.x - PHP-Version 8.x |
|
Hallo,
Im Anhang des ersten Beitrages befindet sich eine Anleitung für das Update von PHP-Version 7.x auf PHP-Version 8.x.
Ich rate jedoch zur vollständigen Anleitung, da nur dort, im Normalfall, alle Suchstellen der Reihe nach vorkommen.
Soweit bekannt, ist es notwendig folgende Dateien für das Update zu bearbeiten:
- /addreply.php
- /attachment.php
- /attachmentedit.php
- /board.php
- /calendar.php
- /editpost.php
- /forgotpw.php
- /formmail.php
- /global.php
- /index.php
- /login.php
- /memberslist.php
- /misc.php
- /modcp.php
- /newthread.php
- /pms.php
- /polledit.php
- /pollvote.php
- /print.php
- /profile.php
- /regimage.php
- /register.php
- /report.php
- /search.php
- /team.php
- /thread.php
- /threadrating.php
- /usercp.php
- /usergroups.php
- /acp/avatar.php
- /acp/bbcodes.php
- /acp/board.php
- /acp/database.php
- /acp/designpack.php
- /acp/global.php
- /acp/group.php
- /acp/icon.php
- /acp/index.php
- /acp/languagepack.php
- /acp/login.php
- /acp/logout.php
- /acp/memberslist.php
- /acp/misc.php
- /acp/options.php
- /acp/otherstuff.php
- /acp/profilefield.php
- /acp/ranks.php
- /acp/setup.php
- /acp/smilie.php
- /acp/style.php
- /acp/template.php
- /acp/threads.php
- /acp/users.php
- /acp/lib/admin_functions.php
- /acp/lib/class_adminsession.php
- /acp/lib/class_headers.php
- /acp/lib/class_parse.php
- /acp/lib/class_variableimport.php
- /acp/lib/functions.php
- /acp/lib/session.php
- /acp/templates/group_copy.htm
- /acp/templates/group_permissionsbit.htm
- /acp/templates/group_viewbit.htm
- /acp/templates/style_import.htm
- /acp/templates/threads_spinbit.htm
- /acp/templates/threads_spinclosebit.htm
- /acp/templates/threads_spindelbit.ht
- /acp/templates/threads_spinmovebit.htm
- /acp/templates/wordmatch_wordbit.htm
- /acp/archive/board.php
- /acp/archive/global.php
__________________
|
|
03.03.2021 21:59 |
|
|
Viktor
Administrator
Zeige Viktor auf Karte
Dabei seit: 15.08.2003
Beiträge: 31.796
363 Filebase-Einträge
Alter: 67 Jahre
Herkunft: NRW wBB-Version: wBB2.3 PHP-Version: 7.4.33 MySQL-Version: 10.11.6-MariaDB Wo bist du gehostet?: eigener Server
Bewertung:
Level: 71 [?]
Erfahrungspunkte: 247.468.176
Nächster Level: 266.777.854
|
|
RE: Update PHP-Version 7.x - PHP-Version 8.x |
|
Hallo,
noch ein Fehler in der Datei "acp/setup.php" gefunden.
Suche:
code: |
1:
2:
3:
|
if ( preg_match("/^(3\.23)|(4\.)|(5\.)/", $version) ) $db->query("ALTER TABLE bb".$n."_sessions TYPE=HEAP", 0, 0, 0);
|
|
Ersetze mit:
code: |
1:
2:
3:
|
if ( preg_match("/^(3\.23)|(4\.)|(5\.)/", $version) ) $db->query("ALTER TABLE bb".$n."_sessions ENGINE=HEAP", 0, 0, 0);
|
|
Gruß
Viktor
__________________
Ein kluger Mann widerspricht keiner Frau. Er wartet, bis sie es selbst tut.
... beim Käfer (WBB2) konnte man noch selber schrauben,
beim neuen Golf (WBB3) muß man fast schon in die Werkstatt wenn man das "Wischwasser" nachfüllen muss!
Da fast keiner mehr hier Postet gibt es ab sofort keinen Support mehr per PN.
|
|
29.03.2023 22:33 |
|
|
|
RE: Update PHP-Version 7.x - PHP-Version 8.x |
|
Hallo,
|
Zitat: Original von Viktor
Hallo,
noch ein Fehler in der Datei "acp/setup.php" gefunden.
Suche:
code: |
1:
2:
3:
|
if ( preg_match("/^(3\.23)|(4\.)|(5\.)/", $version) ) $db->query("ALTER TABLE bb".$n."_sessions TYPE=HEAP", 0, 0, 0);
|
|
Ersetze mit:
code: |
1:
2:
3:
|
if ( preg_match("/^(3\.23)|(4\.)|(5\.)/", $version) ) $db->query("ALTER TABLE bb".$n."_sessions ENGINE=HEAP", 0, 0, 0);
|
|
Gruß
Viktor
|
|
|
Steht in der Anleitung.
Da es aber keine PHP 7 zu PHP 8 relevante Änderung ist, steht sie nur in einer von beiden Anleitungen.
__________________
|
|
31.03.2023 14:15 |
|
|
|
Update PHP-Version <8.3.0 - PHP-Version >=8.3.0 |
|
Hallo,
In der PHP-Version 8.3.0 gab es ein paar Änderungen bezüglich der internen PHP-Funktion "highlight_string()".
Die Änderungen können falsche Darstellung im BBCode "php" zur Folge haben.
Um das Problem zu beheben, müssen ein paar Änderungen/Ergänzungen in der "acp/lib/class_parse.php" durchgeführt werden.
suche in "/acp/lib/class_parse.php" nach:
füge darüber ein:
php: |
1:
2:
3:
4:
|
if (version_compare($phpversion, "8.3.0") != -1) {
$code = str_replace(array("\r\n", "\n\r", "\r"), "\n", $code);
$code = str_replace("\n", " \n ", $code);
} |
|
suche:
php: |
1:
2:
|
$buffer = str_replace("<code>", "", $buffer);
$buffer = str_replace("</code>", "", $buffer); |
|
ersetze gegen:
php: |
1:
2:
|
//$buffer = str_replace("<code>", "", $buffer);
//$buffer = str_replace("</code>", "", $buffer); |
|
suche:
php: |
1:
2:
3:
4:
5:
6:
7:
|
if ($phptags == 1) {
if (version_compare($phpversion, "4.3.0") == -1 || version_compare($phpversion, "5.0.5") >= 0) $buffer = preg_replace("/([^\\2]*)(<\?php )(.*)( .*\?>)([^\\4]*)/si", "\\1\\3\\5", $buffer);
else if (version_compare($phpversion, "5.0.0RC1") == -1) $buffer = preg_replace("/([^\\2]*)(<\?php )(.*)( .*\?>)([^\\4]*)/si", "\\1\\3\\5", $buffer);
else {
$buffer = preg_replace("/([^\\2]*)(<\?php )(.*)(\?>)([^\\4]*)/si", "\\1\\3\\5", $buffer);
}
} |
|
oder suche:
php: |
1:
|
if ($phptags == 1) $buffer = preg_replace("/([^\\2]*)(<\?php )(.*)( .*\?>)([^\\4]*)/si", "\\1\\3\\5", $buffer); |
|
ersetze gegen:
php: |
1:
2:
3:
4:
5:
6:
7:
8:
|
if ($phptags == 1) {
if (version_compare($phpversion, "8.3.0") != -1) {
$buffer = preg_replace("/([^\\2]*)(<\?php )(.*)( .*\?>)([^\\4]*)/si", "\\1\\3\\5", $buffer);
$buffer = str_replace(" \n ", "<br />", $buffer);
}
else $buffer = preg_replace("/([^\\2]*)(<\?php )(.*)( .*\?>)([^\\4]*)/si", "\\1\\3\\5", $buffer);
}
elseif (version_compare($phpversion, "8.3.0") != -1) $buffer = str_replace(" \n ", "<br />", $buffer); |
|
Achtung:
Der Code verwendet ein geschütztes Leerzeichen bei den Stellen mit " \n ", was jedoch in diesem Beitrag durch ein normales Leerzeichen ersetzt wurde.
Es wird empfohlen Diese selbst zu ändern oder eine der beiden Anleitungen im ersten Beitrag zu verwenden.
Als Alternative kann auch statt " \n " die Codefolge chr(160).chr(10).chr(160) verwendet werden.
__________________
|
|
15.03.2024 20:20 |
|
|
|
|
|
|