Hi Leute
folgendes Problem:
In meinem CMS verwende ich eine Kernklasse, die die Konfiguration etc. vornimmt. Beim Initialisieren der Klasse lege ich unter der Variablen $me im globalen Bereich das aktuelle Userprofil ab, so dass von überall Zugriff besteht.
Der Kern wird über eine Datei core.inc.php eingerichtet, welche in alle Dateien includiert wird.
Das Problem ist jetzt, das bei mir lokal alles bestens läuft und auf meinem Webspace lief bis vor einem Monat auch alles super. Ich weiß nicht genau, aber ich glaube, die Hoster sind von PHP 5.1.X auf 5.2.2 gegangen. Lokal läuft 5.1.1. Und nun macht folgende Zeile auf dem Webspace Probleme:
Macht Probleme heißt, es kommt keine Ausgabe an den Client. Also, selbst wenn ich vor dieser Zeile einige echos einfüge, sehe ich nur eine weiße Seite. Sobald ich die Zeile auskommentiere, funktioniert alles wieder (bis irgendwann auf die nichtdefinierte Variable $GLOBALS['me'] zugegriffen wird).
Ich habe schon versucht, woran das Problem liegen könnte, jedoch keine Lösung gefunden.
Ich kann der Variablen alles mögliche Zuweisen und ich kann auch das Userprofil anlegen und irgend einer anderen Variablen Zuweisen. Auch der Weg, die Variable per
bekannt zu machen und dann zuzuweisen, resultiert in einer weißen Seite. Auch wenn ich das neue Userprofil-Objekt vorerst einer anderen Variablen zuweise und dann der globalen, sehe ich nur Weiß.
Nach einem Blick in die phpinfo viel mir der Versionsunterschied auf. In den Changelog von php steht bei Version 5.2.0 der Eintrag:
Meiner Meinung nach wird da das Problem liegen.
Meine Frage nun, was kann ich da tun? Habt ihr ein paar Ideen, wie ich jetzt vorgehen sollte? Schließlich ist das System so nicht lauffähig!
Gruss
Martin
folgendes Problem:
In meinem CMS verwende ich eine Kernklasse, die die Konfiguration etc. vornimmt. Beim Initialisieren der Klasse lege ich unter der Variablen $me im globalen Bereich das aktuelle Userprofil ab, so dass von überall Zugriff besteht.
Der Kern wird über eine Datei core.inc.php eingerichtet, welche in alle Dateien includiert wird.
Das Problem ist jetzt, das bei mir lokal alles bestens läuft und auf meinem Webspace lief bis vor einem Monat auch alles super. Ich weiß nicht genau, aber ich glaube, die Hoster sind von PHP 5.1.X auf 5.2.2 gegangen. Lokal läuft 5.1.1. Und nun macht folgende Zeile auf dem Webspace Probleme:
PHP-Code:
$GLOBALS['me'] = new Userprofil( $_SESSION['user'] );
Ich habe schon versucht, woran das Problem liegen könnte, jedoch keine Lösung gefunden.
Ich kann der Variablen alles mögliche Zuweisen und ich kann auch das Userprofil anlegen und irgend einer anderen Variablen Zuweisen. Auch der Weg, die Variable per
PHP-Code:
global $me;
Nach einem Blick in die phpinfo viel mir der Versionsunterschied auf. In den Changelog von php steht bei Version 5.2.0 der Eintrag:
Code:
Added automatic module globals management. (Dmitry)
Meine Frage nun, was kann ich da tun? Habt ihr ein paar Ideen, wie ich jetzt vorgehen sollte? Schließlich ist das System so nicht lauffähig!
Gruss
Martin
Kommentar