Seite 1 von 2
Übergabe der Benutzeranmeldung an phpBB (für eingenen Login)
Verfasst: 23.01.2006 18:42
von pan2004
Hallo,
ich bin nach dieser Anleitung:
http://www.phpbb.de/doku/kb/artikel.php ... t=benutzer (Die manuelle Erstellung einer Benutzer-Sitzung) vorgegangen, um ein Benutzeranmeldung an das Forum zu leiten.
Die Daten kommt aus meine HP, da ich in diesem Fall meine eingenen Loginformular verwenden möchte.
Habe dafür zwei DB, eine für das Forum und eine für die HP, wobei die Usersdaten identisch sind.
Nach der Anleitung konnte ich zwar die Daten richtig in die Tabelle "
phpbb_sessions" einfügen, sobald ich den Link z.ß:
http://www.meindomain.de/forum/index.ph ... 6789abcdef
aus meine HP aufrufe, bin ich zwar im Forum, aber leider nicht als eingeloggt.
Was mache ich da falsch? Bitte dringend um euer Hilfe.
Gruss, pan2004

Verfasst: 26.01.2006 18:19
von Jan88
Hab auch ein ähnliches Problem. Ich würde gerne die phpbb tabelle als logintabelle nehmen. allerdings fehlen dort dann noch ein paar angaben die ich manuell dazufüge. allerdings möchte ich ein eigenes login haben das nicht aufs forum umleitet, sondern einfach nur auf eine andere seite. aber der user soll während diesem vorgang automatisch auch im forum eingeloggt werden.
Verfasst: 26.01.2006 18:39
von S2B
@Jan88: Dann wird wohl nichts um die Cookie-Methode herumführen. Schau dir einfach mal den Code in der sessions.php an:
Code: Alles auswählen
setcookie($cookiename . '_data', serialize($sessiondata), $current_time + 31536000, $cookiepath, $cookiedomain, $cookiesecure);
setcookie($cookiename . '_sid', $session_id, 0, $cookiepath, $cookiedomain, $cookiesecure);
Das eigentliche Problem an der Sache ist, dass du dir diese ganzen Variablen aus der Funktion session_begin() rauspicken musst und dir deinen eigenen (phpBB unabhängigen) Code schreiben musst, um die Werte zu erhalten.

Zu den Zusatzfeldern: Welche Felder hast du denn zur Sessions-Tabelle hinzugefügt?
@pan2004: Hast du die Session-ID auch entsprechend angepasst, also die Session-ID verwendet, die du zuvor erstellt und in die Datenbank eingetragen hast?
Verfasst: 26.01.2006 19:34
von Jan88
Nen user level und den richtigen namen und die klasse und noch ne kommentarspalte für den user eine für andere und eine für mods. Ist ne schulhomepage die ich grad programmier
Verfasst: 26.01.2006 22:11
von S2B
An deiner Stelle würde ich diese zusätzlichen Daten in eine extra Tabelle packen, sowas hat eigentlich in der Session-Tabelle (zumindest, wenn diese vom phpBB verwendet wird) wenig zu suchen...

Verfasst: 26.01.2006 22:22
von Jan88
Ich hab sie ja auch parralel in ner tabelle. Nur meine Frage ist jetzt wie kann ich mein login und das vom forum kombinieren? Der user soll sich nicht zweimal einloggen müssen.
Verfasst: 27.01.2006 13:52
von S2B
Wie schon oben gesagt, Session einfügen, Cookie fürs Forum setzen, eventuellen Cookie für die Homepage setzen und los geht's.

Verfasst: 27.01.2006 17:27
von Jan88
S2B hat geschrieben:Wie schon oben gesagt, Session einfügen, Cookie fürs Forum setzen, eventuellen Cookie für die Homepage setzen und los geht's.

Und wie genau? Ich hab ja ne tabelle wo die zusatz daten liegen und halt die phpbb-tabelle. Wie kann ich jetzt beide verknüpfen und die session zusammenlegen?
Verfasst: 27.01.2006 20:20
von S2B
Kommt ganz drauf an, wie deine zweite User-Tabelle aussieht.
Edit: z.B. so
Code: Alles auswählen
SELECT s.*, u.*, u2.* FROM phpbb_sessions s
LEFT JOIN phpbb_users u ON s.session_user_id = u.user_id
LEFT JOIN users2 u2 ON s.session_id = u2.session_id
WHERE s.session_id = <DieSessionID>
[/i]
Verfasst: 28.01.2006 11:04
von Jan88
S2B hat geschrieben:Kommt ganz drauf an, wie deine zweite User-Tabelle aussieht.
Edit: z.B. so
Code: Alles auswählen
SELECT s.*, u.*, u2.* FROM phpbb_sessions s
LEFT JOIN phpbb_users u ON s.session_user_id = u.user_id
LEFT JOIN users2 u2 ON s.session_id = u2.session_id
WHERE s.session_id = <DieSessionID>
[/i]
tut mir leid aber ich versteh nicht so ganz was das grad heißt. In der anderen tabelle liegen nur die ecvhten namen(nicht die phpbb-namen) und noch zusatz infos. meine frage ist wie ich meinen login so nutzen kann das man damit auch beim forum online ist. wohin muss ich dafür wlche infos übertragen?