'Deprecated' und 'Warning' nach Umstellung PHP 7-70 stable (Technics)

by uli ⌂ @, Friday, August 11, 2017, 01:16 (10 days ago)

Ja das Update auf 2.4.3 war gut,
ich freu mich, dass die 'bookmarks-funktion' jetzt auch geht (bisher hatte ich nur die Schalter dazu, aber keine Funktion.
(könnt sein, dass das am 'nichtleeren' von templates_c lag :-(

Nachdem ich im Verlauf von Umstellung auf msqli gelesen hatte, dachte ich, dass jetzt auch die (von Joomla) empfohlene Umstellung auf 7-70STABLE-STANDARD hinhaun müsste.

Danach kamen dann bei Erstellung eines Eintrags unten stehende 'Deprecated'-Hinweise und 'Warnings'

Jetzt hab ich erstmal wieder auf 5-56LATEST-STANDARD zurückgedreht und harre der Dinge.

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; StringParser has a deprecated constructor in /forum/modules/stringparser_bbcode/stringparser.class.php on line 66

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; StringParser_Node has a deprecated constructor in /forum/modules/stringparser_bbcode/stringparser.class.php on line 838

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; StringParser_Node_Text has a deprecated constructor in /kunden/forum/modules/stringparser_bbcode/stringparser.class.php on line 1453

Warning: Cannot modify header information - headers already sent by (output started at /forum/modules/stringparser_bbcode/stringparser.class.php:66) in /forum/index.php on line 209

Warning: Cannot modify header information - headers already sent by (output started at /kunden/283766_82223/webseiten/joomla3/forum/modules/stringparser_bbcode/stringparser.class.php:66) in /forum/index.php on line 210

Avatar

'Deprecated' und 'Warning' nach Umstellung PHP 7-70 stable

by Auge ⌂ @, Friday, August 11, 2017, 06:46 (10 days ago) @ uli
edited by Auge, Friday, August 11, 2017, 07:06

Hallo

Ja das Update auf 2.4.3 war gut,
ich freu mich, dass die 'bookmarks-funktion' jetzt auch geht (bisher hatte ich nur die Schalter dazu, aber keine Funktion.
(könnt sein, dass das am 'nichtleeren' von templates_c lag :-(

Hier und in anderen Installationen hat die Bookmark-Funktion auch vor der Version 2.4.3 funktioniert. Es kann also durchaus sein, dass es an den veralteten Templates lag. Das wird sich aber im Nachhinein wohl nicht mehr ermitteln lassen.

Nachdem ich im Verlauf von Umstellung auf msqli gelesen hatte, dachte ich, dass jetzt auch die (von Joomla) empfohlene Umstellung auf 7-70STABLE-STANDARD hinhaun müsste.

Du meinst eine PHP-Version im 7.0er Zweig oder doch etwas anderes?

Danach kamen dann bei Erstellung eines Eintrags unten stehende 'Deprecated'-Hinweise und 'Warnings'

Einzelne der Meldungen spreche ich gleich noch einmal an, jedoch sei ein Hinweis im Voraus, auch für Andere, die auf das selbe Problem stoßen, gestattet. Die Meldungen warnen vor der Verwendung bestimmter Methoden, weil diese als veraltet gelten (deprecated). Die betroffene StringParser-Klasse wird von ihrem Autor mittlerweile schon einige Jahre nicht mehr gepflegt, also auch nicht an neue Gegebenheiten in PHP angepasst. Das müssen und werden wir angehen.

Jetzt hab ich erstmal wieder auf 5-56LATEST-STANDARD zurückgedreht und harre der Dinge.

Falls dein Hoster eine 5.6er Version anbieten sollte, solltest du diese nehmen. Wenn ich deine Versionsangabe richtig interpretiere, handelt es sich um eine Version aus dem 5.5er Zweig, der letzmals am 21. Juli 2016 aktualisiert wurde und nicht mehr gepflegt wird (siehe dazu Wikipedia: PHP-Versionsgeschichte).

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; StringParser has a deprecated constructor …
 
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; StringParser_Node has a deprecated constructor …
 
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; StringParser_Node_Text has a deprecated constructor …

Dies sind die oben schon erwähnten Meldungen zu zukünftig nicht mehr unterstützten Methoden. Eigentlich können die uns für den Betrieb eines Forums momentan egal sein, denn diese zukünftig nicht mehr unterstützten Methoden werden von allen jetzt aktuellen PHP-Versionen sehr wohl unterstützt.

Warning: Cannot modify header information - headers already sent …
 
Warning: Cannot modify header information - headers already sent by …

Hierbei handelt es sich "nur" um Folgefehler. Das Skript kann keine HTTP-Header setzen, wenn zuvor schon Ausgaben gesendet wurden. Die obigen drei Meldungen sind diese Ausgaben.

An welcher Stelle wir das Error-Reporting derart scharf eingestellt haben, muss ich noch heraus bekommen. Mit großer Wahrscheinlichkeit reicht in einem ersten Schritt die Unterdrückung der Meldungen aus. Wenn es zukünftig PHP-Versionen geben wird, die den Code tatsächlich nicht mehr ausführen, reicht das natürlich nicht mehr. Denn dann wird es statt der Deprecated-Meldungen "echte" Fehlermeldungen hageln.

Tscö, Auge

--
further development of mlf1

Avatar

'Deprecated' und 'Warning' nach Umstellung PHP 7-70 stable

by Auge ⌂ @, Friday, August 11, 2017, 10:17 (10 days ago) @ Auge

Hallo

An welcher Stelle wir das Error-Reporting derart scharf eingestellt haben, muss ich noch heraus bekommen.

Wie sich herausstellt, haben wir das nicht. Es gibt zwar speziell für Smarty entsprechenden Code, der ist aber keineswegs neu und auch nicht der Auslöser dieser Meldungen. Vermutlich ist die scharfe Einstellung der PHP-Meldungen von Seiten des Webservers erfolgt.

@uli: Frage bitte deinen Hoster, ob die Einstellungen von PHP7 bezüglich der Fehlermeldungen anders ist, als bei älteren PHP-Versionen [1] und ob sie außerhalb von PHP-Skripten von dir geändert werden kann (z.B. in einer eigenen php.ini oder .htaccess).

Tschö, Auge

[1]: Mir ist klar, dass speziell diese Deprecated-Meldungen in älteren PHP-Versionen (z.B. PHP 5.5 und 5.6) nicht erscheinen, weil der bemängelte Code in diesen Versionen (noch) nicht als deprecated galt. Allerdings ist die Ausgabe gerade solcher Meldungen (deprecated, warning) in Produktivumgebungen eher ungewöhnlich und insbesondere unerwünscht. Wenn überhaupt, gehört so etwas in eine servereigene Logdatei, auf die nur berechtigte Benutzer und nicht jeder Kreti und Pleti Zugriff haben.

--
further development of mlf1

Gelöst: 'Deprecated' und 'Warning' nach Umstellung

by uli ⌂ @, Friday, August 11, 2017, 11:11 (10 days ago) @ Auge

Hallo Auge,

danke für die schnelle und kompetente Rückmeldung.

Nach kurzem Denken fiel mir ein, dass ich in mal bei meinem Hoster einen PHP-Editor gesehen hab.
Durch Herausnahme des Hakens bei "display_errors" in der PHP.ini ist das Problem (augenscheinlich)gelöst.
Durch die Umstellung der PHP-Version kam eine neue PHP.ini zur Geltung, wo standardmässig "display_errors" gesetzt war.

Gruss und Dank

uli

Hallo

An welcher Stelle wir das Error-Reporting derart scharf eingestellt haben, muss ich noch heraus bekommen.


Wie sich herausstellt, haben wir das nicht. Es gibt zwar speziell für Smarty entsprechenden Code, der ist aber keineswegs neu und auch nicht der Auslöser dieser Meldungen. Vermutlich ist die scharfe Einstellung der PHP-Meldungen von Seiten des Webservers erfolgt.

@uli: Frage bitte deinen Hoster, ob die Einstellungen von PHP7 bezüglich der Fehlermeldungen anders ist, als bei älteren PHP-Versionen [1] und ob sie außerhalb von PHP-Skripten von dir geändert werden kann (z.B. in einer eigenen php.ini oder .htaccess).

Tschö, Auge

[1]: Mir ist klar, dass speziell diese Deprecated-Meldungen in älteren PHP-Versionen (z.B. PHP 5.5 und 5.6) nicht erscheinen, weil der bemängelte Code in diesen Versionen (noch) nicht als deprecated galt. Allerdings ist die Ausgabe gerade solcher Meldungen (deprecated, warning) in Produktivumgebungen eher ungewöhnlich und insbesondere unerwünscht. Wenn überhaupt, gehört so etwas in eine servereigene Logdatei, auf die nur berechtigte Benutzer und nicht jeder Kreti und Pleti Zugriff haben.

Avatar

Gelöst: 'Deprecated' und 'Warning' nach Umstellung

by Auge ⌂ @, Friday, August 11, 2017, 11:28 (10 days ago) @ uli

Hallo

Durch Herausnahme des Hakens bei "display_errors" in der PHP.ini ist das Problem (augenscheinlich) gelöst.

Schön, dich auf die richtige Spur geführt zu haben. Gelöst ist dieses Problem aber noch nicht, nur vertagt. Die Ursache, die Verwendung der Bibliothek, die mit zukünftig nicht mehr unterstützten Methoden arbeitet, bleibt uns ja erst einmal erhalten. Es bleibt zu überlegen, ob wir die BBCode-Parser-Class an zukünftige Erfordernisse anpassen oder ob wir sie durch eine andere Bibliothek ersetzen, die auch aktuell durch den/die Autor(en) gepflegt wird.

Das Problem sind ja nicht nur durch uns nachzuvollziehende Änderungen in PHP, sondern von uns nicht erkenn- und einschätzbare Fehler, die im Code lauern könnten. Auf die Art könnten wir Version für Version Programmfehler oder gar Sicherheitslöcher mit uns rumschleppen. Das ist nicht erstrebenswert, nicht für uns als Ersteller und nicht für euch als Anwender der Software.

Tschö, Auge

--
further development of mlf1

Gelöst (augenscheinlich): 'Deprecated' und 'Warning'

by uli @, Friday, August 11, 2017, 11:38 (10 days ago) @ Auge

Hallo Auge,

Schön, dich auf die richtige Spur geführt zu haben. Gelöst ist dieses Problem aber noch nicht, nur vertagt. Die Ursache, die Verwendung der Bibliothek, die mit zukünftig nicht mehr unterstützten Methoden arbeitet, bleibt uns ja erst einmal erhalten. Es bleibt zu überlegen, ob wir die BBCode-Parser-Class an zukünftige Erfordernisse anpassen oder ob wir sie durch eine andere Bibliothek ersetzen, die auch aktuell durch den/die Autor(en) gepflegt wird.

darum mein "augenscheinlich!"

Ich habe in deinem Reply von heute Morgen sehr wohl das dahinter stehende Problem mit der 'BBCode-Parser-Class' gelesen und als Problem (zumindest) verstanden.
Da kann ich aber leider nicht helfen, bin Anwender :waving: (und bugreporter), die tiefsten Tiefen des Codes sind mir ein Buch mit 7 Siegeln.


Das Problem sind ja nicht nur durch uns nachzuvollziehende Änderungen in PHP, sondern von uns nicht erkenn- und einschätzbare Fehler, die im Code lauern könnten. Auf die Art könnten wir Version für Version Programmfehler oder gar Sicherheitslöcher mit uns rumschleppen. Das ist nicht erstrebenswert, nicht für uns als Ersteller und nicht für euch als Anwender der Software.

Hej hej,
wir hoffen auf Euch !

Dank für euer Mühen

uli

RSS Feed of thread
powered by my little forum