Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Login auf externer Seite
#1
Hi
ich hab den Login zu meinem Forum mit meinem Mitgliederbereich zusammengeschaltet. Dazu hab ich folgendes verwendet:
PHP-Code:
include('inc/config.php');
chdir('mitglieder/forum'); // path to MyBB
require './global.php';

if(
$mybb->user['uid']){ 
Das funktionierte wunderbar bis ich auf MyBB 1.2 umgestellt hab. Jetzt kommt die fehlermeldung:
Zitat:Direct initialization of this file is not allowed.

Please make sure IN_MYBB is defined.
Muss ich jetzt eine Variable definieren oder wie bekomm ich das hin?
Eine Homepage ist nie fertig, man hört nur auf an ihr zu arbeiten - Unbekannter Verfasser
Zitieren
#2
Füge folgende Zeile ein bevor du die global.php einbindest:
PHP-Code:
define("IN_MYBB"1); 

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#3
Danke.

Top Support.Megasmile

Hat sich anscheinend n bisschen was verändert mit der Version 1.2...Wink

frank
Eine Homepage ist nie fertig, man hört nur auf an ihr zu arbeiten - Unbekannter Verfasser
Zitieren
#4
Leider funktioniert das nur wenn ich angemeldet bin.
Wenn ich mich ausgeloggt hab dann kommt automatisch der Anmeldebildschirm des Forums aber man kann sich nicht anmelden weil sich meine Logindatei in nem anderen Verzeichnis befindet als die member.php.
Folgende Datei:
PHP-Code:
echo "test";
define("IN_MYBB"0);
echo 
"test";
chdir('mitglieder/forum'); // path to MyBB
echo "test";
require_once 
'./global.php';
echo 
"test";
if(
$mybb->user['uid']){ 
... 
Bringt folgendes Ergebnis wenn man nicht eingeloggt ist:
Code:
testtesttest
Warning: Cannot modify header information - headers already sent by (output started at /homepages/24/d157964251/htdocs/login.php:4) in /homepages/24/d157964251/htdocs/mitglieder/forum/inc/functions.php on line 1061

Warning: Cannot modify header information - headers already sent by (output started at /homepages/24/d157964251/htdocs/login.php:4) in /homepages/24/d157964251/htdocs/mitglieder/forum/inc/functions.php on line 1061
Und dann die Eingabemaske für nicht angemeldete Mitglieder aus dem Forum.
Also drei mal test und dann wenn die global.php eingebunden wird kommt der Anmeldebildschirm ohne dass der weitere Programmcode ausgeführt wird.
Eine Homepage ist nie fertig, man hört nur auf an ihr zu arbeiten - Unbekannter Verfasser
Zitieren
#5
Hallo Frankrieger,

Die Fehlermeldung besagt das möglicherweise vor <? oder nach dem ?> (leer-)zeichen sind. Bitte überprüfe deine Daten auf diese Fehlerquelle.
Desweiteren ist dein Codeschnipsel so nicht in ordnung, da das echo zwischen den includes nichts bewirken wird und kann. das echo wird dir auch nicht aufzeigen ob etwas ausgeführt wird.

Es sollte also ausreichen wenn der Code wie folgt aufgbaut ist:
PHP-Code:
echo "test";
define("IN_MYBB"0);
chdir('mitglieder/forum'); // path to MyBB
require_once './global.php';
if(
$mybb->user['uid'])
{
echo
"test";
}
else
{
echo
"test";


Mfg Garlant
Zitieren
#6
Das ich mit den tests nichts ausrichten kann ist mir klar.
Ich wollte damit nur verdeutlichen dass der Anmeldebildschirm durch die global.php ausgelöst wird. Meine eigentliche Datei ist so aufgebaut wie du es vorgeschlagen hast.
Da kommt dann folgende Fehlermeldung:
Code:
test
Warning: Cannot modify header information - headers already sent by (output started at /homepages/24/d157964251/htdocs/login.php:2) in /homepages/24/d157964251/htdocs/mitglieder/forum/inc/functions.php on line 1061

Warning: Cannot modify header information - headers already sent by (output started at /homepages/24/d157964251/htdocs/login.php:2) in /homepages/24/d157964251/htdocs/mitglieder/forum/inc/functions.php on line 1061

Warning: Cannot modify header information - headers already sent by (output started at /homepages/24/d157964251/htdocs/login.php:2) in /homepages/24/d157964251/htdocs/mitglieder/forum/inc/functions.php on line 1061
Und eigentlich kommt die Fehlermeldung nur weil ein echo vor dem require kam, da dort der Header des Forums geladen wird. Es kommt also gar keine Fehlermeldung wenn das erste echo "test"; gelöscht wird. Aber mir geht es darum dass seit der Version 1.2 der Anmeldebildschirm des Forums automatisch geladen wird wenn die global.php initialisiert wird. Und da ich meinen eigen Login hab würde ich das gern verhindern. Ausserdem würde es so leider nicht funktionieren, da sich die member.php zu der man kommt wenn man sich anmeldet in einem anderen Verzeichnis befindet.

[edit]Kann ich vielleicht direkt abfragen ob jemand eingeloggt ist? Ohne über die global.php zu gehen?
Eine Homepage ist nie fertig, man hört nur auf an ihr zu arbeiten - Unbekannter Verfasser
Zitieren
#7
frankrieger schrieb:[edit]Kann ich vielleicht direkt abfragen ob jemand eingeloggt ist? Ohne über die global.php zu gehen?
Ja, du kannst den Cookie mybbuser auslesen, dieser beinhaltet die Benutzer-ID und den Loginkey.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#8
Hab leider keinerlei Erfahrungen mit Cookies.

Wie kann ich es denn auslesen?
Und was sagt mir die Benutzer-ID und der LoginKey? Dass er eingeloggt ist? Wie sieht es aus wenn es kein Cookie gibt kann ich das auch abfragen?
Eine Homepage ist nie fertig, man hört nur auf an ihr zu arbeiten - Unbekannter Verfasser
Zitieren
#9
So sollte es gehen:
PHP-Code:
<?php
if($_COOKIE['mybbuser']) {
    $var explode("_"$_COOKIE['mybbuser']);
    $uid $var['0'];
    $loginkey $var['1'];
} else {
    echo "Kein Cookie";
}
?>

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#10
Reicht die Abfrage
PHP-Code:
if($_COOKIE['mybbuser']){ 
Wenn ich nur wissen will ob er eingeloggt ist oder nicht?
Eine Homepage ist nie fertig, man hört nur auf an ihr zu arbeiten - Unbekannter Verfasser
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
Question Eingeloggten Benutzer auf externer Seite anzeigen Fatmax 10 5.404 07.07.2011, 16:25
Letzter Beitrag: Fatmax
  Externer Login mit PN JF600 5 2.825 20.05.2009, 17:37
Letzter Beitrag: Michael
  Attachment von externer Seite hochladen Organist 0 1.573 11.04.2009, 11:23
Letzter Beitrag: Organist
  externer Login Frido 1 1.683 18.01.2009, 11:12
Letzter Beitrag: StefanT
  MyBB Themes und Templates auf externer Seite Zwoetzen 3 5.016 28.04.2008, 19:08
Letzter Beitrag: Dave