You are here: Re: Flash & PHP Session « PHP Programming Language « IT news, forums, messages
Re: Flash & PHP Session

Posted by amygdala on 08/21/06 07:31

"amygdala" <noreply@noreply.com> schreef in bericht
news:44e96003$0$2030$9a622dc7@news.kpnplanet.nl...
>
> "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.

And once again, I didn't read thoroughly anough:

>> This will give you access to the variable PHPSESSID in flash. Make sure
>> you append this to every GET request to php.

Should of course be: POST variable to php

And then in the php page that handles flash requests:

<?php
session_id($_POST['PHPSESSID']); // instead of $_GET[...]
session_start();
?>

lol

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация