nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

Ajax-Requests, Cookies und PHP-Sessions

Von: Konni Scheller (kscheller@ochs.franken.de) [Profil]
Datum: 27.05.2008 07:43
Message-ID: <1ihl8jc.1p4opfb1aj52ozN%kscheller@ochs.franken.de>
Followup-to: de.comp.lang.php.misc
Newsgroup: de.comp.lang.php.misc de.comp.lang.javascript
Hallo,

ich habe das Problem, dass beim XHTTPRequest die Session verloren geht.

Ich möchte ein File, das auf dem Server liegt, nachladen. Dazu antwortet
auf den Ajax-Request das Script "getfile.php", das das angeforderte File
zurückliefert.

Natürlich ist das ein Riesensicherheitsloch: getfile liefert alles, ohne
Ansehen der Person (des Browsers, der Session) und alles, was für den
Apachen readable ist.

Nun möchte ich, dass getfile.php Zugriff auf die Session des Benutzers
hat. XHTTPRequest liefert jedoch keinen Cookie mit, der eine SessionID
übergibt.

Meine Idee war nun, der URL eine PHPSESSID= zu übergeben. Das klappt
auch, die ID wird übertragen. Damit bildete ich mir ein, den
(eingeschalteten) Cookie-Mechanismus zu überlisten. Die URL setze ich so
zusammen

"http://addresse.tld/getfile.php?file=foo.html&amp;PHPSESSID=".session_i
d()."

In getfile.php versuche ich die session dann so zu "regenerieren":

session_start();

Danach ist auch wirklich eine session_id() vorhanden, wie eine
Testausgabe beweist.

Versuche ich jedoch auf das superglobale Arrays $_SESSION zuzugreifen,
gibt es einen Error 500  (Internal Server Error).

Wo liegt mein Denkfehler?


Gibt es vielleicht einen anderen Weg, getfile.php sicher zu machen?



Servus,
Konni


--
Scharfe Wochen im Oktober - Meerrettichspezialitäten und mehr
http://www.scharfe-wochen.de/

[ Auf dieses Posting antworten ]

Antworten