php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.07.2009, 07:24  
Neuer Benutzer
 
Registriert seit: 29.03.2009
Beiträge: 20
grunz befindet sich auf einem aufstrebenden Ast
Standard Integration von phpbb - Logindaten der eigenen Seite verwenden

Hallo!

Ich möchte in eine vorhandene Portalsoftware phpbb3 integrieren.
Die Portalsoftware hat einen eigenen Login, der auch weiter verwendet werden soll.
Natürlich soll aber vermieden werden, dass sich die Benutzer 2 mal (Portal + phpbb) einloggen müssen.
Wie könnte ich das vermeiden?
Ich stelle mir das so vor, dass ich den vorhandenen Login der Portalsoftware verwende. Wenn sich ein Benutzer erolgreich eingeloggt hat, müsste ich die Daten (Name, Passwort) an das phpbb login script übertragen (die Benutzertabellen der beiden Systeme werden per authentication plugin schon synchronisiert).
Das phpbb login script erwartet die Daten als POST-Parameter.
Wie kann ich Name und Passwort an das phpbb Login Script übertragen?

Wie könnte ich das ganze alternativ lösen?
grunz ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.07.2009, 10:23  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Hi,

dein Problem hat jetzt aber nicht unbedingt Fortgeschrittenen - Niveau.

Zum Thema findest du tolle Sache im Web (hab ich auch gefunden). Ich verwende auch die Logindaten des phpbb für mein Projekt ( php4yourself.de - Projekte hochladen, vorstellen, diskutieren )!

Folgendes musst du auf jeder Seite zu Beginn aufrufen, um auf die Daten zugreifen zu können:
PHP-Code:
<?php
define
('IN_PHPBB'true);
//replace $phpbb_root_path with path to your forum
$phpbb_root_path './forum/';
$phpEx substr(strrchr(__FILE__'.'), 1);
include(
$phpbb_root_path 'common.' $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
Daten abfragen, damit du einen Überblick über die Daten erhälst und weist, womit du arbeiten kannst:
PHP-Code:
echo '<pre>'print_r($user), '</pre>'
Das Loginformular sieht so aus:
PHP-Code:
<form method="post" action="forum/ucp.php?mode=login">
<input type="text" name="username">
<br />
<input type="password" name="password">
<input type="submit" name="login" value="login">
<br />
<a href="<?php echo append_sid("./forum/ucp.php?mode=register"); ?>">
Registrieren
</a>
</form>
Dort findest du auch einen phpbb3 - Link:

PHP-Code:
<?php echo append_sid("./forum/ucp.php?mode=register"); ?>
Die Funktion append_sid("adresse.php") hängt - sofern notwendig - die Session-ID an die Adresse an!

Für weitere Fragen bemühe bitte zuerst Google!

Gruß

Geändert von Asipak (27.07.2009 um 10:28 Uhr).
Asipak ist offline   Mit Zitat antworten
Alt 27.07.2009, 10:51  
Neuer Benutzer
 
Registriert seit: 29.03.2009
Beiträge: 20
grunz befindet sich auf einem aufstrebenden Ast
Standard

Ich glaube ich habe da ein allgemeines Verständnis Problem.

Mit deiner Lösung logge ich mich im phpbb System ein und verwende die Userdaten aus phpbb.
Das Problem ist aber, dass in der vorhandenen Portalsoftware ja auch schon ein Usermanagement + Sessionmanagement implementiert ist, welches auch für die Portalfunktionen genutzt werden soll.
Das Portal hat z.B. eine ganz andere Rechteverwaltung usw., die stimmt mit phpBB nicht überein.

Die Lösungen die ich im Internet gefunden habe, gehen immer davon aus, das man für das komplette Projekt die phpbb User- und Sessionverwaltung benutzt.

Portalsoftware und phpBB sollen aber jeweils mit ihren eigenen User- und Sessionverwaltungen arbeiten. Trotzdem soll ein zentraler Login verwendet werden.

Dazu habe ich noch keine Lösung gefunden, auch deine löst dieses Problem nicht oder aber ich verstehe die Lösung nicht.
Oder stehe ich auf dem Schlauch?
grunz ist offline   Mit Zitat antworten
Alt 27.07.2009, 12:49  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.072
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Die Lösungen die ich im Internet gefunden habe, gehen immer davon aus, das man für das komplette Projekt die phpbb User- und Sessionverwaltung benutzt.
Das war auch mein Vorschlag!

Zitat:
Portalsoftware und phpBB sollen aber jeweils mit ihren eigenen User- und Sessionverwaltungen arbeiten. Trotzdem soll ein zentraler Login verwendet werden.
Das wird wohl nicht so einfach machbar sein! Beide, das Forum und die Portalsoftware, müssen dann mit für sie jeweils fremden Informationen arbeiten. Beide nutzen ja mit Sicherheit unterschiedliche Funktion, um mit den Daten zu arbeiten.

Als Anfänger wirst du da wahrscheinlich wenig erreichen.
Asipak ist offline   Mit Zitat antworten
Alt 27.07.2009, 17:17  
Neuer Benutzer
 
Registriert seit: 29.03.2009
Beiträge: 20
grunz befindet sich auf einem aufstrebenden Ast
Standard

naja deswegen frag ich ja nach.
Auch wenn es nicht einfach ist, ist es doch vielleicht machbar.

Die Portalsoftware auf das phpbb System umzustellen ist nicht möglich wegen Rechteverwaltung usw.
Die Benutzerverwaltung von phpBB an das Portalsystem anpassen ist wohl auch ziemlich unsinnig und (denke ich) aufwendig, vor allem wären ja dann Updates von phpBB nicht mehr möglich.

Aber ich kann mir vorstellen, dass es doch bestimmt jemanden gibt der vor dem gleichen oder einem ähnlichen Problem stand.

Beide Systeme funktionieren ja unabhängig voneinander. In der Portalsoftware ist ein Link zum Forum. In der Portalsoftware kann ich mich einloggen und die Portalfunktionen nutzen, klicke ich dann auf den Foren Link, kann ich mich dort einloggen (gleicher Benutzername und Passwort, da die DBs die gleichen Benutzer mit den gleichen Passwoertern enthalten) und die Forenfunktionen nutzen.
Das einzige was fehlt, ist eine gemeinsame Loginform. Ich bräuchte quasi ein Formular was als target die phpBB login datei UND die portalsoftware login datei hat.
grunz ist offline   Mit Zitat antworten
Alt 27.07.2009, 17:26  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Das Problem dürfte die nötige gemeinsame Session sein. Ohne gemeinsame Session hättest Du ja keine permanente Anmeldung, mit kommen sich sicher
- Session(variablen)namensräume
- Sessiondatenlösung (z.B. beim Abmelden, nach dem Anmelden)
- Sessionlöschung und -umbenennung (session_regenerate_id)
in die Quere.

Eine Anpassung dürfte einen tiefen Eingriff in die ANwenungsprogrammierung darstellen. Insofern das Portal eine Eigenlösung darstellt, solltet Ihr dort ändern, da Ihr sonst bei jeder Boardaktualisierung wieder von vorn anfangt. Ganz auszuschliessen ist das aber trotzdem nicht.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--

Geändert von nikosch (27.07.2009 um 17:30 Uhr).
nikosch ist offline   Mit Zitat antworten
Alt 28.07.2009, 03:28  
Erfahrener Benutzer
 
Registriert seit: 28.09.2008
Beiträge: 1.168
PHP-Kenntnisse:
Fortgeschritten
Koala befindet sich auf einem aufstrebenden Ast
Standard

Die Integartion von phpbb3 ist absoluter Mist
und der oft gehörte Spruch:
"wenn Du phpbb in eine bestehende Website integrieren willst,
dann integrier die Website in phpbb"
zeugt von unglaublicher Ignoranz der phpbb-Macher.

Ich hab auch schon ein phpbb3-Forum in eine bestehende Website
integriert und zwar so, daß man beim Einloggen in die bestehende Website
auch automatisch im Forum eingeloggt ist.
Ging nur mit zwei mal header Location und dem Ändern der ucp.php
und dem Verwenden der curl_phpbb.class.php von Dean Newman.

Hier hab ich bei der ucp.php angesetzt:
PHP-Code:
    case 'login':
        if (
$user->data['is_registered'])
        {
        
login_box(request_var('redirect'"index.$phpEx"));
        
//redirect(append_sid("{$phpbb_root_path}index.$phpEx"));
        
        
}
        
//redirect(append_sid("{$phpbb_root_path}index.$phpEx"));
        
login_box(request_var('redirect'"index.$phpEx"));        
    break; 
Das Problem dabei:
der Anmeldescreen des Forums wird beim Einloggen auf der
bestehenden Website kurz angezeigt (zwar nur kurz, aber lang genug
daß User irgendwo unbefugt rumklicken können - letztlich also eine
unbefriedigende Lösung.)

Mit phpbb 2 geht die Sache angeblich besser:
dort brauchst nur den md5-hash des PW zu ermitteln und
kannst Dich bedeutend einfacher in beiden Systemen einloggen.

Geändert von Koala (28.07.2009 um 03:33 Uhr).
Koala ist offline   Mit Zitat antworten
Alt 28.07.2009, 11:04  
Neuer Benutzer
 
Registriert seit: 29.03.2009
Beiträge: 20
grunz befindet sich auf einem aufstrebenden Ast
Standard Danke...

vielen Dank!

Das waren doch mal zwei hilfreiche Antworten.

Hatte mir das ganze nicht so kompliziert vorgestellt, da phpBB ja sehr verbreitet ist und es ja in meinen Augen kein seltener Fall ist, das ein Forum nachträglich in eine Seite eingebaut wird.
Aber in meinem Fall ist das ganze dann wohl doch mit viel Aufwand oder einer nicht ganz sauberen Lösung verbunden.
Ich denke dann ist es sinnvoller direkt ein einfaches Forensystem selbst zu entwickeln.

@Koala: Kann man sich Deine Lösung irgendwo ansehen?

Geändert von grunz (28.07.2009 um 11:29 Uhr).
grunz ist offline   Mit Zitat antworten
Alt 28.07.2009, 13:05  
Erfahrener Benutzer
 
Registriert seit: 28.09.2008
Beiträge: 1.168
PHP-Kenntnisse:
Fortgeschritten
Koala befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Kann man sich Deine Lösung irgendwo ansehen?
nein - das ist eine interne Website eines Vereins.
Koala ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
<form> anderer Seite auslesen? tesim JavaScript, Ajax und mehr 8 25.04.2009 14:57
Seite a.php von Seite b.php automatisch aktualisieren lassen? Registrierer PHP Tipps 2009 6 15.04.2009 12:39
PhpBB Session verwenden lukast PHP Tipps 2009 5 21.01.2009 21:37
[Erledigt] Header Location funktioniert nicht, wenn div's oder span's auf der Seite s phpels PHP Tipps 2008 24 01.12.2008 00:16
Hilfe, Seite im Internet Explorer Buggy trowman HTML, Usability und Barrierefreiheit 4 15.09.2008 08:32
Bei richtiger Eingabe Daten an nächste Seite versenden xx_heidi_xx PHP Tipps 2008 49 27.05.2008 14:56
Krieg kein Objekt zurück auf includeter Seite NONNNNN PHP Tipps 2008 5 28.03.2008 19:25
Eintrag in DB und Wechsel zu anderer Seite Darson PHP Tipps 2008 25 14.01.2008 16:46
Welche seite (Adresse) rief die aktuelle seite auf? PHP Tipps 2005-2 7 05.07.2005 15:02
phpbb Reload PHP Tipps 2005 17 21.04.2005 09:59
Seite in Seite PHP-Fortgeschrittene 3 15.03.2005 19:27
[Erledigt] phpbb in seite integrieren HTML, Usability und Barrierefreiheit 7 22.02.2005 22:04
Seite nicht mit content="3600" im Cache gespeicher scheibo PHP Tipps 2004 0 19.07.2004 14:49
In phpBb eingebundene Seite PHP Tipps 2004 4 19.07.2004 11:57
[Erledigt] PHP Eine neue PHP seite automatisch öffnen PHP Tipps 2004 1 19.06.2004 12:40

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
phpbb3 session integrieren, phpbb login nutzen, phpbb3 session integration, phpbb3 login daten verwenden, phpbb3 sessions integration, phpbb session auslesen, phpbb benutzerverwaltung, phpbb integrieren, phpbb mit session id aus anderer seite aufrufen, http://www.php.de/php-fortgeschrittene/57487-integration-von-phpbb-logindaten-der-eigenen-seite-verwenden.html, phpbb3 login, phpbb3 benutzerverwaltung, phpbb3 gemeinsamer login, phpbb3 login script, phpbb authentication plugin, phpbb logindaten, phpbb3 login integration, phpbb3 authentication plugins, phpbb3 userdaten verwenden, phpbb3 login verwenden

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:45 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum