Variable für angemeldete User - Druckversion +- MyBB.de Forum (https://www.mybb.de/forum) +-- Forum: Sonstiges (https://www.mybb.de/forum/forum-1.html) +--- Forum: Programmierung (https://www.mybb.de/forum/forum-32.html) +--- Thema: Variable für angemeldete User (/thread-36335.html) Seiten: Seiten:
1
2
|
Variable für angemeldete User - oldsiggi - 20.03.2019 Hallo, ich möchte das mybb-board mit einer selbst programmierten php-Seite bekannt machen. Dazu möchte ich, dass das die php-Seite eine User-Session/Cookie aus dem mybb-board ausliest um zu sehen, dass der User im mybb-board eingeloggt ist. Ist der user NICHT im mybb-board eingeloggt, soll er das php-programm auch nicht öffnen können. Das hat mit einer anderen Boardsoftware schon mal funktioniert. Da musste ich in der php-Seite folgenden script einfügen: <?php session_start(); if(!isset($_COOKIE['bs_user'])) { echo "Dieser Bereich ist nur für eingeloggte User erlaubt</a>"; exit; } ?> Ich denke mal, dass ich die Variable ['bs_user'] hier ändern muss. Kann mir jemand einen Tip geben? Darüber hinaus möchte ich auch einen Link zum php-Programm mit in die Menüleiste vom mybb-board einfügen. Danke schon mal... RE: Variable für angemeldete User - itsmeJAY - 20.03.2019 Du könntest per require die global.php einbinden und folgendes probieren: PHP-Code: if($mybb->user['uid']) Grüße, JAY RE: Variable für angemeldete User - oldsiggi - 21.03.2019 Vielen Dank erst mal... ich habe mich mal daran versucht. Dabei habe ich den unten stehenden code über dem head-bereich des externen php-Programms geschrieben: <?php session_start(); if($mybb->user['uid']) { echo "willkommen"; } else { echo "nicht willkommen"; } ?> Als Ergebnis schreibt das externe Programm "nicht willkommen" - also hat die Übergabe der Variable nicht funktioniert. Was mache ich falsch (oder unvollständig)? RE: Variable für angemeldete User - doylecc - 21.03.2019 Bevor du $mybb->user['uid'] verwenden kannst, musst du darüber noch die global.php von MyBB einbinden. PHP-Code: require_once "pfad-zum-mybb-ordner/global.php"; RE: Variable für angemeldete User - itsmeJAY - 21.03.2019 Ist die global.php inkludiert per require? PHP-Code: require_once('global.php'); RE: Variable für angemeldete User - oldsiggi - 21.03.2019 Vielen Dank - geht ja fix mit den Antworten, Es gibt 2 Dateien mit dem Namen global.php. eine im root verzeichnis und eine im Ordner darunter \archive\global.php funzen leider beide nicht. Bekomme eine Fehlermeldung: Direct initialization of this file is not allowed. Please make sure IN_MYBB is defined. hier nochmal mein aktueller php-code: unter dem verzeichnis /board liegt das mybb - das externe liegt daneben im /archiv - deshalb ../ <?php require_once "../board/global.php"; session_start(); if($mybb->user['uid']) { echo "willkommen im Archiv ($mybb->user['uid'])"; } else { echo "kein Zugang gewährt"; } ?> RE: Variable für angemeldete User - itsmeJAY - 21.03.2019 Füg mal folgende Konstante vor dem require ein. Klappts dann? PHP-Code: define('IN_MYBB', 1); RE: Variable für angemeldete User - doylecc - 21.03.2019 Beachte auch, wenn sich deine PHP-Seite außerhalb des MyBB-Ordners befindet, muss die Gültigkeit der MyBB-Cookies entsprechend erweitert werden. Wenn MyBB zum Beispiel im Ordner "board" liegt und im Admin-CP unter Konfiguration -> Seiten_Details -> Cookie-Pfad /board/ eingetragen ist, müsste es auf / geändert werden (und anschließend die vorhanden Cookies im Browser gelöscht werden), damit sie auch außerhalb des Ordners gelten. RE: Variable für angemeldete User - oldsiggi - 21.03.2019 (21.03.2019, 13:12)itsmeJAY schrieb: Füg mal folgende Konstante vor dem require ein. Klappts dann? Haha, lustig: Wenn ich das davor setze, gelangt die php-Seite in die Startseite vom mybb-Board hilft deshalb leider auch nicht ... (21.03.2019, 13:37)doylecc schrieb: Beachte auch, wenn sich deine PHP-Seite außerhalb des MyBB-Ordners befindet, muss die Gültigkeit der MyBB-Cookies entsprechend erweitert werden. Danke! Das ist auch so. Ich habe das gemäß deiner Beschreibung geändert. Aber die Fehlermeldung: Direct initialization of this file is not allowed. Please make sure IN_MYBB is defined. bleibt trotzdem. RE: Variable für angemeldete User - itsmeJAY - 21.03.2019 Hi, Auch im offiziellen MyBB.com Forum steht: PHP-Code: define('IN_MYBB', 1); require "./global.php"; Ich wüsste über Handy jetzt nicht direkt, wo genau der Fehler liegt |