$userdata und Cookie

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Jan88
Mitglied
Beiträge: 278
Registriert: 04.10.2005 15:02
Kontaktdaten:

$userdata und Cookie

Beitrag von Jan88 »

Hallo,

ich würde gerne in meinem eigenen Script an das Array $userdata kommen OHNE das gesamte Forum zu benutzen.
Also nicht die Vorlage für eingebunene Seiten benutzen.
Wie komm ich daran?

Und wie komm ich an das Cookie von meinem phpBB2 ran?
Ebenfalls ohne die Vorlage zu benutzen.

Gruß
Jan
Benutzeravatar
mgutt
Mitglied
Beiträge: 2999
Registriert: 31.08.2004 16:44
Wohnort: Hennef
Kontaktdaten:

Beitrag von mgutt »

Auf was zielst Du ab?

Wie man ein Cookie einliest sollte man schon wissen, sonst kannst Du ja keine Daten verarbeiten :-?

EDIT:

Ein Auszug aus der sessions.php vielleicht hilft das ja:

Code: Alles auswählen

	$cookiename = $board_config['cookie_name'];
	$cookiepath = $board_config['cookie_path'];
	$cookiedomain = $board_config['cookie_domain'];
	$cookiesecure = $board_config['cookie_secure'];

	if ( isset($HTTP_COOKIE_VARS[$cookiename . '_sid']) || isset($HTTP_COOKIE_VARS[$cookiename . '_data']) )
	{
		$session_id = isset($HTTP_COOKIE_VARS[$cookiename . '_sid']) ? $HTTP_COOKIE_VARS[$cookiename . '_sid'] : '';
		$sessiondata = isset($HTTP_COOKIE_VARS[$cookiename . '_data']) ? unserialize(stripslashes($HTTP_COOKIE_VARS[$cookiename . '_data'])) : array();
		$sessionmethod = SESSION_METHOD_COOKIE;
	}
	else
	{
		$sessiondata = array();
		$session_id = ( isset($HTTP_GET_VARS['sid']) ) ? $HTTP_GET_VARS['sid'] : '';
		$sessionmethod = SESSION_METHOD_GET;
	}
Zuletzt geändert von mgutt am 28.02.2006 13:14, insgesamt 1-mal geändert.
meine Foren: http://www.maxrev.de/communities.htm
Ich kaufe Dein Forum! Angebote bitte an marc at gutt punkt it
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

die Seite muss in der selben Domain hängen wie das Forum dann kommste auch ans phpBB Cookie

Code: Alles auswählen

$_COOKIE['cookie_name']
Und zum array $userdata, durch das Cookie kannst du die User-ID herausfinden und dann kannste per SQL folgendes machen:

Code: Alles auswählen

$sql = "SELECT u.*, s.* FROM phpbb_users u, phpbb_session WHERE u.user_id = $user_id";
$result = $db->sql_query($sql); // oder mysql_query()... oder was du für ein DB System nutzt
while( $userdata = $db->sql_fetchrow($result) );
Dann hast auch du dein array -> $userdata ohne phpBB.
Jan88
Mitglied
Beiträge: 278
Registriert: 04.10.2005 15:02
Kontaktdaten:

Beitrag von Jan88 »

fanrpg hat geschrieben:die Seite muss in der selben Domain hängen wie das Forum dann kommste auch ans phpBB Cookie

Code: Alles auswählen

$_COOKIE['cookie_name']
Was heißt in der selben Domaine?
das Script liegt hier:
www.meineseite.de/das/script.php

und das forum hier:
www.meineseite.de/das/forum/ist/hier.php


Jan
Benutzeravatar
mgutt
Mitglied
Beiträge: 2999
Registriert: 31.08.2004 16:44
Wohnort: Hennef
Kontaktdaten:

Beitrag von mgutt »

Domain = Host also nach deinem Beispiel:

www.meineseite.de

Sollte also klappen.
meine Foren: http://www.maxrev.de/communities.htm
Ich kaufe Dein Forum! Angebote bitte an marc at gutt punkt it
Jan88
Mitglied
Beiträge: 278
Registriert: 04.10.2005 15:02
Kontaktdaten:

Beitrag von Jan88 »

und der Cookie name ist der der auch in der DB liegt oder? es werden ja zwei?! Cookies gesetzt. Aber ich brauch den 'cookiename_sid' oder?
Benutzeravatar
mgutt
Mitglied
Beiträge: 2999
Registriert: 31.08.2004 16:44
Wohnort: Hennef
Kontaktdaten:

Beitrag von mgutt »

Eigentlich müssten es mehrere sein. Ich kann aber bei IE nur eines finden :-?

Der Inhalt sieht beispielsweise so aus:
default-xrefsearch
APOST_POST_URL%2CAPOST_POST_URL%3B/includes/constants.php.source.html%1234l123
www.phpbb.de/
1234
45051234
29831234
2320601234
29751234
*
Hier zu finden:
C:\Dokumente und Einstellungen\<Username>\Lokale Einstellungen\Temporary Internet Files
Bei Firefox gibt es mehr Inhalte. Aber das ist Browserbedingt. Ich denke Du kannst sie wie Du es vor hast auslesen.

Aber wie vorher schon gefragt. Was willst Du erreichen?
meine Foren: http://www.maxrev.de/communities.htm
Ich kaufe Dein Forum! Angebote bitte an marc at gutt punkt it
Jan88
Mitglied
Beiträge: 278
Registriert: 04.10.2005 15:02
Kontaktdaten:

Beitrag von Jan88 »

Schade aber bei mir liegen in
C:\Dokumente und Einstellungen\<Username>\Lokale Einstellungen\Temporary Internet Files
keinerlei dateien.
Die liegen bei mir in:
~home/malte/Programme/firefox/cookies
heißt ich hab Linux und Firefox.
das aber nur am Rande

ich möchte die verschiedenen angaben des Array benutzen um im banner zum beispiel den benutzer je nach geschlecht und name persönlich grüßen lassen. auch den onlinestatus muss ich prüfen und je nach userlevel bestmmte seiten anzeigen bzw sperren.
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Jan88 hat geschrieben:und der Cookie name ist der der auch in der DB liegt oder? es werden ja zwei?! Cookies gesetzt. Aber ich brauch den 'cookiename_sid' oder?
Ja, genau. Du musst also zuerst $board_config auslesen, dann den entsprechenden Cookie auslesen und dann mithilfe der SID in diesem Cookie die Benutzerinfos abfragen (Query steht in fanrpg's Beitrag).
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Benutzeravatar
mgutt
Mitglied
Beiträge: 2999
Registriert: 31.08.2004 16:44
Wohnort: Hennef
Kontaktdaten:

Beitrag von mgutt »

Bedenke, dass Du bei jeder Seite die phpB Session übergeben musst.

Das ist ohne die Funktion "append_sid" nicht sehr sinnvoll. Also viel Arbeit, wenn Du keine phpBB Seite machst.

Ich würde die phpBB Standarddinge auf jedenfall includen.
meine Foren: http://www.maxrev.de/communities.htm
Ich kaufe Dein Forum! Angebote bitte an marc at gutt punkt it
Antworten

Zurück zu „Coding & Technik“