Login durch externe Anwendung

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
asteireif
Mitglied
Beiträge: 7
Registriert: 04.08.2010 17:12

Login durch externe Anwendung

Beitrag von asteireif »

Hallo Forum

hoffe ich bin hier in der richtigen Kategorie gelandet ;-)

Momentan bin ich dabei, Contao (CMS) und phpBB3 mit einander zu verbinden. Contao ist das führende System und ich hab für das phpBB3 auch schon ein Authentication Plugin entwickelt, welches ganz gut funktioniert. Melde ich mich nun im phppB3 an, werden die User aus der Contao Tabelle abgefragt und falls noch nicht vorhanden angelegt. Soweit so gut ... Ich möchte aber nun, wenn ich mich in Contao als Benutzer anmelde, auch gleich die Anmeldung für das phpBB3 setzen. Hab bisher folgenden Code zusammen:

Code: Alles auswählen

//phpBB3 Integration
				global $phpbb_root_path, $phpEx, $user, $db, $config, $cache, $template;
				define('IN_PHPBB', true);
				$phpbb_root_path = dirname(__FILE__) . '/../../../app/community/';
				$phpEx = substr(strrchr(__FILE__, '.'), 1);
			
				include_once("app/community/common.php");
				include($phpbb_root_path . 'includes/utf/utf_normalizer.' . $phpEx);
				// Start session management
				$user->session_begin();
				$auth->acl($user->data);
				$user->setup();
			
				$username = request_var($this->Input->post('username'), '');
				$password = request_var($this->Input->post('password'), '');
				$auth->login($this->Input->post('username'), $this->Input->post('password'), true);
Hilft mir alles aber nicht weiter. Zuerst wirft das System utf8 Error, weil sich teilweise die Funktionen überlappen, das habe ich gefixt. Aber selbst wenn der Login durch geht (ohne Fehlermeldung), so ist man im phpBB3 nicht angemeldet... Dazu hätte ich folgende Fragen:

- Hat jemand schon etwas ähnliches entwickelt, sprich Login in einer externen Anwendung?
- Wie sehe ich, ob ich im phpBB3 angemeldet bin? Ich meine über Firebug kann ich ja die Cookies auslesen, da steht aber nicht wirklich was drin
- Any ideas?

Wäre über jede Hilfestellung sehr dankbar :-)
asteireif
Mitglied
Beiträge: 7
Registriert: 04.08.2010 17:12

Re: Login durch externe Anwendung

Beitrag von asteireif »

Habs umgebastelt:

Code: Alles auswählen

$user->session_begin();
				$auth->acl($user->data);
				$user->setup();
			
				$username = $this->Input->post('username');
				$password = $this->Input->post('password');
				
					
				
				
				 $result = $auth->login($username, $password);

			    if ($result['status'] == LOGIN_SUCCESS)
			    {
			      //
			       print_r($result);
			    }
			    else
			    {
			      ///
			    }
Er kommt auch in die LOGIN_SUCCESS Abfrage rein das scheint zu passen nur ist man tdem nicht angemeldet... Any ideas?
asteireif
Mitglied
Beiträge: 7
Registriert: 04.08.2010 17:12

Re: Login durch externe Anwendung

Beitrag von asteireif »

noch ein kleiner Nachtrag...

Mein $result wirft das selbe Ergebnis wenn ich es mit print_r ausgebe wie das "$result = $auth->login($username, $password, $autologin, $viewonline, $admin);" aus der functions.php in Zeile 2848
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17473
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Re: Login durch externe Anwendung

Beitrag von Dr.Death »

Hallo,

bitte schau Dir mal kurz unseren KB:16 - Thema Topic Bumping an.....


... und dann das hier: [Snippet] Externer Login / Logout für phpBB3

Vielleicht hilft es ja ;-)
asteireif
Mitglied
Beiträge: 7
Registriert: 04.08.2010 17:12

Re: Login durch externe Anwendung

Beitrag von asteireif »

Hallo,

danke für das Feedback... Er wirft bei mir ziemlich viele "non object" Fehler, kann ich umgehen in dem ich folgende Zeile noch mit rein nehme

Code: Alles auswählen

global $phpbb_root_path, $phpEx, $user, $db, $config, $cache, $template;
Auf Basis des Codes (Link von oben den du gepostet hast) habe ich das jetzt nochmal umgesetzt, er gibt auch "Du bist angemeldet" aus, aber wenn ich dann danach ins Forum gehe, bin ich nicht angemeldet... Any ideas?
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17473
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Re: Login durch externe Anwendung

Beitrag von Dr.Death »

Du musst das $autologin = true übergeben, ansonsten wird kein Cookie gesetzt.... oder Du hast den $autologin gesetzt, aber deine Cookie Einstellungen stimmten nicht.
asteireif
Mitglied
Beiträge: 7
Registriert: 04.08.2010 17:12

Re: Login durch externe Anwendung

Beitrag von asteireif »

Hallo,

danke dir, lag an den Cookie Einstellungen :-)!
Problem gelöst
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“