Seite 1 von 1
Forum-Cookie selbst setzen? Übergeordneter Login
Verfasst: 07.12.2007 09:10
von HoPi`
Moin,
ich hab gerade das aktuelle phpBB2 frisch installiert und möchte es in ein bestehendes Projekt einbinden. Die Benutzer loggen sich schon ein, bevor Sie überhaupt in die Nähe des Forums kommen (d.h. ich habe jetzt auch 2 Benutzer-Tabellen in der Datenbank).
Gibt es eine Möglichkeit, den Forum-Cookie schon zu setzen, damit sich die Benutzer dort nicht nochmal einloggen müssen? Bietet das BB2 vielleicht Funktionen an, an die ich durch includen der richtigen Datei einfach rankomme?
Danke im Voraus

Verfasst: 07.12.2007 23:40
von cYbercOsmOnauT
Ich habe den Login des Forum in einer Community folgendermaßen eingebaut:
Code: Alles auswählen
// Forenlogin Start
// phpBB Scripte einbinden
$phpbb_root_path = './forum/';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
// phpBB Session starten
$userdata = session_pagestart($user_ip, PAGE_INDEX);
// Ist der User aus dem Forum ausgeloggt?
if ( $userdata['user_id'] == ANONYMOUS || $userdata['session_user_id'] == ANONYMOUS )
{
// Sicherheitscheck ob der User auch in der ForenDB existiert
$phpbb_sql = "SELECT user_id FROM " . USERS_TABLE . "
WHERE comm_id=$comm_id";
$phpbb_query = $db->sql_query($phpbb_sql);
$phpbb_result = $db->sql_fetchrow($phpbb_query);
// Wenn ja, dann im Board einloggen
if ( !empty($phpbb_result['user_id']) )
{
session_begin($phpbb_result['user_id'], $user_ip, PAGE_INDEX, FALSE, TRUE);
// Am Ende alle verwendeten Variablen löschen
unset($phpbb_root_path, $phpbb_sql, $phpbb_query, $phpbb_result, $userdata);
}
}
// Forenlogin Ende
Der Code kommt einfach an die Stelle Deines Login-Scriptes nach erfolgreichem Login in die Community.
Die comm_id ist die Userid des Users in der Community. Dies habe ich als Feld in der phpbb_users mit gespeichert um die Verbindung zwischen der Usertabelle der Community und der Usertabelle des Boards zu schaffen.
Verfasst: 28.01.2008 14:22
von BlackIP
Habe mal versucht das was du hier gepostet hast in mein Forum zu übernehmen.
Habe das doch wohl richtig verstanden,
das ich deinen scriptteil nur in den Abschlussbereich meines Loginsripts einfügen muss
und evtl. den Pfahd zum Forum anpasse.
Hat nicht Funktioniert, benutze phpBB 3.0.x, liegt es vieleicht daran?
Oder liegt es daran das beim meinem Login eine Mailaddy und ein Passwort abgefragt wird ?
Verfasst: 29.01.2008 00:53
von cYbercOsmOnauT
Vielleicht? Sind wir hier im 3.0'er Supportforum?

Wat ne Frage. Der 3er ist ganz anders aufgebaut innen. Da wird es wohl kaum mit dem 2er-Loginscript funktionieren.

Verfasst: 21.02.2008 17:51
von grapo
Hallo,
ich habe gerade versucht, das oben genannte Script bei mir ins php2 zu integrieren, aber leider kommt dann immer die Meldung "HACKING ATTEMPT" . Wo ist da der Fehler, kann mir jemand helfen.
Danke
Gruß
Marcus
Verfasst: 22.02.2008 10:44
von cYbercOsmOnauT
Hacking attempt kommt immer, wenn define ('IN_PHPBB', TRUE); fehlt (was in meinem obigen Script der Fall ist).
Nochmals, der oben gepostete Code ist nicht dafür gedacht, 1:1 in eine Community eingebaut zu werden. Das wird auf keinen Fall funktionieren. Er dient ausschliesslich dazu, einen Ansatz zu liefern, mit dem man als mindestens durchschnittlicher PHP-Kenner arbeiten kann. Es ist keine MOD-Anleitung.