moziloGB: Fehlermeldung nach Umstellung auf php 7.2

  • 8 Antworten
  • 329 Aufrufe
*

Offline rolinux

  • Mitglied
  • 647
moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« am: 21. Oktober 2018, 11:52:30 »
Hallo,

nach der Umstellung meiner Homepage auf php 7.2 werden im moziloGB diese Fehlermeldungen ausgegeben:
Warning: A non-numeric value encountered in /data/web/1/000/016/977/21550/htdocs/rolf/plugins/moziloGB/index.php on line 273 (diese Meldung kommt mehrfach)

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; ShowEntries has a deprecated constructor in /data/web/1/000/016/977/21550/htdocs/rolf/plugins/moziloGB/ShowEntries.php on line 5 (diese Meldung kommt nur einmal)

Homepage: www.rolf-langmann.de
mozilo-Version: 2.0 ("Amalia") Revision 51

Gruß
Rolf
« Letzte Änderung: 21. Oktober 2018, 11:56:05 von rolinux »
"Vergiss nie, dass die Musik viel zu wichtig ist,
um sie ganz den Profis zu überlassen."
(Robert Fulghum, amerikanischer Philosoph)

*

Offline rolinux

  • Mitglied
  • 647
Re: moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« Antwort #1 am: 19. November 2018, 09:11:21 »
Weiß niemand, wo das Problem liegt?
"Vergiss nie, dass die Musik viel zu wichtig ist,
um sie ganz den Profis zu überlassen."
(Robert Fulghum, amerikanischer Philosoph)

*

Offline marusti

  • Administrator
  • Mitglied
  • 269
Re: moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« Antwort #2 am: 19. November 2018, 12:42:31 »
Die zweite Meldung ist die gleiche Meldung wie hier https://www.mozilo.de/forum/index.php/topic,4382.0.html
« Letzte Änderung: 19. November 2018, 12:47:53 von marusti »

*

Offline rolinux

  • Mitglied
  • 647
Re: moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« Antwort #3 am: 28. November 2018, 11:56:03 »
Die zweite Fehlermeldung kommt jetzt nicht mehr. Warum auch immer. TermContent (Dein Link) wird ja da gar nicht verwendet.
Aber die andere Meldung mit Zeile 273 kommt immer noch.
"Vergiss nie, dass die Musik viel zu wichtig ist,
um sie ganz den Profis zu überlassen."
(Robert Fulghum, amerikanischer Philosoph)

*

Offline marusti

  • Administrator
  • Mitglied
  • 269
Re: moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« Antwort #4 am: 28. November 2018, 12:07:15 »
TermContent (Dein Link) wird ja da gar nicht verwendet.
Ich meinte nur das die Fehlermeldung die Gleiche war wie in dem anderen Fall. Wenn sie nicht mehr erscheint noch besser.

*

Offline marusti

  • Administrator
  • Mitglied
  • 269
Re: moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« Antwort #5 am: 29. November 2018, 21:38:20 »
Warning: A non-numeric value encountered in /data/web/1/000/016/977/21550/htdocs/rolf/plugins/moziloGB/index.php on line 273
Habe es bei mir lokal getestet und die Warnung für Zeile 279 erhalten. Welche Zeile ist bei dir 273?
Konnte es bei mir folgendermaßen lösen:
zwischen function help_makeRandomStr($i) { (bei mir Zeile 277) und $xyz = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; (bei mir Zeile 278) folgendes einfügen $i = 0;
Gesamte Funktion sieht daher bei mir jetzt so aus
function help_makeRandomStr($i) {
    $i = 0;
        $xyz = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        $tmp = md5(microtime()+$i);
        $tmp = str_split($tmp);
        shuffle($tmp);
        return $xyz[(rand(0,(strlen($xyz) - 1)))].implode("",$tmp);
    }

*

Offline hausl78

  • Coder
  • Mitglied
  • 1259
Re: moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« Antwort #6 am: 30. November 2018, 09:30:37 »
Das Problem ist das mircotime() einen String zurückgibt.

function help_makeRandomStr($i) {
    $i = 0;
        $xyz = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        $tmp = md5(microtime()+$i);
        $tmp = str_split($tmp);
        shuffle($tmp);
        return $xyz[(rand(0,(strlen($xyz) - 1)))].implode("",$tmp);
}

echo help_makeRandomStr(5);
/*
Notice:  A non well formed numeric value encountered in ... on line 6
L880b6885578608bbf37f75ca9036d44a
*/

Somit könnte das so die Lösung sein microtime() ein true mit anzugeben.
function help_makeRandomStr($i) {
        $xyz = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        $tmp = md5(microtime(true)+$i);
        $tmp = str_split($tmp);
        shuffle($tmp);
        return $xyz[(rand(0,(strlen($xyz) - 1)))].implode("",$tmp);
}
echo help_makeRandomStr(0); // keine Notivce mehr
« Letzte Änderung: 30. November 2018, 09:33:31 von hausl78 »

*

Offline rolinux

  • Mitglied
  • 647
Re: moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« Antwort #7 am: 15. Dezember 2018, 11:20:11 »
Hallo Hausl,

das wars leider nicht.
Aber 273 ist bei mir genau die Zeile, in der die Funktion microtime aufgerufen wird.

Gruß
Rolf
"Vergiss nie, dass die Musik viel zu wichtig ist,
um sie ganz den Profis zu überlassen."
(Robert Fulghum, amerikanischer Philosoph)

*

Offline marusti

  • Administrator
  • Mitglied
  • 269
Re: moziloGB: Fehlermeldung nach Umstellung auf php 7.2
« Antwort #8 am: 17. Dezember 2018, 22:05:11 »
Hatte das eben nochmal angeschaut. Meine vorherige Lösung hat jetzt bei mir auch nicht mehr funktioniert. Habe aber etwas Neues gefunden und beim ersten Test funktioniert es bei mir auch

function help_makeRandomStr($i) {
        $xyz = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        $tmp = md5(microtime() . $i);
        $tmp = str_split($tmp);
        shuffle($tmp);
        return $xyz[(rand(0,(strlen($xyz) - 1)))].implode("",$tmp);
    }

Kann das vielleicht mal jemand Testen?