swfupload - Session Problem

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
MaracujaJoe
Mitglied
Beiträge: 25
Registriert: 21.10.2005 20:38

swfupload - Session Problem

Beitrag von MaracujaJoe »

Hallo,

vielleicht kennen einige von euch den swfuploader: http://swfupload.org/.

Über Flash wird ein POST Request abgeschickt an die Datei test.php.

In dieser steht der übliche Kram:

Code: Alles auswählen

define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
include_once($phpbb_root_path . 'includes/functions_albumadmin.' . $phpEx);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('mods/bla');

echo $user->session_id;
Nun kommt auch schon das Problem. Obwohl ich eine sid übergebe (probiert mit POST und GET), diese stammt aus $user->session_id und wird direkt beim Javascript für den Upload angegeben, bekomme ich eine Andere Session ID ausgegeben.
Sprich, ich lasse mir eine sid ausgeben und übergebe diese dem Flash, der postet die an eine Datei und die $user->session_id dort ist dann eine andere.

Sollte er nicht normalerweise mit der sid weitermachen die ich ihm übergebe?

Herrauskommt jedenfalls das die Datei an die geschickt wird immer denkt ich wäre ausgeloggt ...

Vielleicht hat jemand von euch eine Idee?

MFG Joe
Benutzeravatar
tas2580
Ehemaliges Teammitglied
Beiträge: 3029
Registriert: 01.07.2004 05:42
Wohnort: /home/tas2580
Kontaktdaten:

Re: swfupload - Session Problem

Beitrag von tas2580 »

Ich denke mal es liegt an der Browserkennung und IP.
Schau mal unter Server-Konfiguration -> Sicherheit und stelle da alles ab was Browserkennung und IP prüft.

Gruß Tobi
Heute ist ein guter Tag um dein Forum zu testen.
Ehemaliger Benutzername: [BTK] Tobi
MaracujaJoe
Mitglied
Beiträge: 25
Registriert: 21.10.2005 20:38

Re: swfupload - Session Problem

Beitrag von MaracujaJoe »

Überprüfung der Sitzungs-IP: Keine
Browser prüfen: Nein

Das bringt allerdings nicht.
Kann ich nicht irgendwie die $user->session_id selbst setzten? Bevor alles initialisiert wird?
MaracujaJoe
Mitglied
Beiträge: 25
Registriert: 21.10.2005 20:38

Re: swfupload - Session Problem

Beitrag von MaracujaJoe »

Ich habe das ganze mal eingegrenzt:

Er hat eine andere $user->session_id weil er in der session.php - session_begin() in den Fall:

Code: Alles auswählen

if (isset($_COOKIE[$config['cookie_name'] . '_sid']) || isset($_COOKIE[$config['cookie_name'] . '_u']))
, geht.

Dort weißt er dann hiermit zu:

Code: Alles auswählen

$this->session_id = request_var($config['cookie_name'] . '_sid', '', false, true);
Wenn ich das richtig verstehe, hat der Flashplayer also eigene Cookies und diese Mistdinger sind auch noch gefüllt ...
Hat jetzt jemand eine Idee dazu?
Benutzeravatar
Blackcrow
Mitglied
Beiträge: 9
Registriert: 13.03.2005 21:38
Wohnort: Schweiz

Re: swfupload - Session Problem

Beitrag von Blackcrow »

HI MaracujaJoe,

ich stehe eben vor genau dem selben Problem.
Konntest du das Problem mittlerweile evtl lösen?

Mir fällt nichts mehr ein, habe die cookie's sogar versucht zu simulieren (die 3 mit Endung _sid, _k und _u), die Session ID per Post weitergeben und per get, alles funktioniert nicht.

Wenn du weiter weisst wär ich froh ;)
MaracujaJoe
Mitglied
Beiträge: 25
Registriert: 21.10.2005 20:38

Re: swfupload - Session Problem

Beitrag von MaracujaJoe »

Hi,

ich hatte keine Lust auf weitere 20 Stunden rumgefummel und habe einen Javaupload, den ich mal "gebaut" habe verwendet.
bei mir ging es nur um einen Bild-Upload für eine Galerie und der Javaupload hat sogar noch lokal verkleinert ...


Grüße Joe
Benutzeravatar
Blackcrow
Mitglied
Beiträge: 9
Registriert: 13.03.2005 21:38
Wohnort: Schweiz

Re: swfupload - Session Problem

Beitrag von Blackcrow »

Hi,

schade dass es keine anständige Lösung dafür gibt.

Ich hab mein Vorhaben über umwege trotzdem lösen können (falls es wer auch ähnlich machen muss)..

Ich hab per $_POST übergabe vom swfuploader die session_id übergeben, anschliessend in der upload.php (die über Flash aufgerufen wird und den Upload verarbeitet) die Datenbank (Tabelle sessions) direkt abgefragt.

Ich brauch im Endefekkt lediglich die User-ID die ich zur Speicherung eines Bildes benötige, und diese erhält man dann folgendermassen:

Code: Alles auswählen

	    $sql['search_user_id'] = mysql_query("	SELECT 
	        										session_id,
	        										session_user_id

											FROM
												phpbb_sessions 
											WHERE 
												session_id = '" . $session_id . "'");   
	   
	    
		        if(mysql_num_rows($sql['search_user_id']) == 1)
		        {
	        		$search_user_id = mysql_fetch_array($sql['search_user_id']);
	        
	        		return $search_user_id['session_user_id'];
		        }

Ich sehe die Lösung eher als Sub-optimal an, wenn wer noch eine bessere, funktionierende Idee hat, bitte posten...
Antworten

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