|
Posted by amygdala on 08/21/06 07:25
"amygdala" <noreply@noreply.com> schreef in bericht
news:44e95b9a$0$2013$9a622dc7@news.kpnplanet.nl...
>
> "Jerry Stuckle" <jstucklex@attglobal.net> schreef in bericht
> news:i8adnfdQ7qUVk3TZnZ2dnUVZ_qOdnZ2d@comcast.com...
>> Steve Cook wrote:
>>> Jerry Stuckle wrote:
>>>
>>>>Steve Cook wrote:
>>>>
>>>>>Jerry Stuckle wrote:
>>>>>
>>>>>
>>>>>>Steve Cook wrote:
>>>>>>
>>>>>>
>>>>>>>Hi,
>>>>>>>
>>>>>>>I have an upload application written in PHP and Flash. The PHP page
>>>>>>>gets the file information via $_POST. Moreover, the user never
>>>>>>>actually visits the PHP page, rather Flash sends the information to
>>>>>>>the
>>>>>>>PHP page and then loads the result, all in the background. Right
>>>>>>>now,
>>>>>>>the php page cannot access the $_SESSION. Is there anyway that I can
>>>>>>>conitnue the PHP session when doing this or does the user have to
>>>>>>>visit
>>>>>>>the PHP page?
>>>>>>>
>>>>>>>Thanks.
>>>>>>>
>>>>>>>Steve
>>>>>>>
>>>>>>
>>>>>>Looks like your flash isn't sending the session cookie along with the
>>>>>>rest of the request.
>>>>>>
>>>>>>--
>>>>>>==================
>>>>>>Remove the "x" from my email address
>>>>>>Jerry Stuckle
>>>>>>JDS Computer Training Corp.
>>>>>>jstucklex@attglobal.net
>>>>>>==================
>>>>>
>>>>>
>>>>>Do you have an idea how I can get flash to send the session cookie?
>>>>>
>>>>
>>>>I think you're going to have to ask that in a Flash newsgroup. We're
>>>>PHP programmers here.
>>>>
>>>>--
>>>>==================
>>>>Remove the "x" from my email address
>>>>Jerry Stuckle
>>>>JDS Computer Training Corp.
>>>>jstucklex@attglobal.net
>>>>==================
>>>
>>>
>>> I definitely know how to pass the session_id via flash. I guess I
>>> should have asked how do I manually set the session_id value in PHP?
>>> In other words how do I populate the session_id variable?
>>>
>>
>> You don't. PHP does, based on the session id passed back by the
>> browser - which is stored in a cookie.
>>
>> --
>> ==================
>> Remove the "x" from my email address
>> Jerry Stuckle
>> JDS Computer Training Corp.
>> jstucklex@attglobal.net
>> ==================
>
> I beg to differ:
>
> Do something like:
>
> <?php
> ini_set('session.use_cookies', '0');
> session_start();
> ?>
>
> Put your flash movie in the same page and echo the SID behind it (old
> school style):
>
> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
> codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"
> width="32" height="32">
> <param name="movie" value="whatever.swf?<?php echo SID ?>">
> <param name="quality" value="high">
> <embed src="whatever.swf?<?php echo SID ?>" width="32" height="32"
> quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer"
> type="application/x-shockwave-flash" sid=""></embed></object>
>
> This will give you access to the variable PHPSESSID in flash. Make sure
> you append this to every GET request to php.
>
> Notice though that appending session ID's to GET request are often
> considered a security risk. But since you are using flash and thus
> requests are made in the background (not through addressbar requests),
> it's somewhat safer to use IMO.
>
> Cheers
>
Ooops I didn't thoroughly read the whole thread. I didn't read that a
session was already started.
Forget about the ini_set('session.use_cookies', '0'); part.
And do (untested):
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"
width="32" height="32">
<param name="movie" value="whatever.swf?PHPSESSID=<?php echo session_id()
?>">
<param name="quality" value="high">
<embed src="whatever.swf?PHPSESSID=<?php echo session_id() ?>" width="32"
height="32" quality="high"
pluginspage="http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" sid=""></embed></object>
Then in the php page that handles flash requests:
<?php
session_id($_GET['PHPSESSID']);
session_start();
?>
Should do the trick. But maybe I'm overlooking something here.
Navigation:
[Reply to this message]
|