1

我有一个 Flash 上传脚本,它使用 .php 文件作为处理器。我需要处理器文件来设置一个带有由 php 脚本创建的画廊 ID 的 cookie,并将其传递到确认页面。除非 Flash 运行 php 文件...它不会设置 cookie。它确实设置了会话变量,这已经足够好了,但是现在我将 lighttpd 用于站点(包括确认页面),将 apache 用于实际的上传器处理器脚本(因为 lighttps 不适合上传大文件),所以会话变量不要' t 在 2 个服务器软件之间传输。

如何将变量从 php 处理器(在 apache 上运行)传输到运行 lighttpd 的确认页面?

4

4 回答 4

1

好吧,我假设它没有设置 cookie,因为它是由 flash 脚本而不是浏览器调用的,并且 cookie 是由浏览器存储的。

我能想到的唯一方法是 mysql 数据库,或者只是一个文本文件。

于 2009-07-17T22:18:38.463 回答
0

只是想到了第二种解决方案,它可能比 Nico 的效率低,但可能更适合您。如果发送到 Flash 的 cookie 也没有发送到浏览器,您可以使用 Flash 的 ExternalInterface 类将 cookie 的内容传递给 javascript 函数,该函数将在浏览器中设置 cookie。或者您可以调用一个 javascript 函数,该函数将进行 AJAX 调用以获取 cookie 的内容。

于 2009-07-19T20:13:35.963 回答
0

不确定我们是否在做同样的事情,但我遇到了类似的问题,无法从通过 flash 运行的 php 脚本设置 cookie。但是我后来意识到它失败了,因为我缺少论点。

flash.swf:
sendToURL('script.php?val=dataFromFlash');

script.php:
//setcookie('flashData', $_GET['val']); //this did not work
setcookie('flashData', $_GET['val'], '0', '/'); //this worked

PHP 手册说只需要 name 参数,但我必须指定 expire 和 date 参数才能使其工作。也许这是因为,正如 Nico 的回答所示,它不是通过浏览器发送的?无论如何,希望这会有所帮助。

于 2010-02-02T08:29:53.537 回答
0

在这里找到使用 php 脚本将所有上传图像数据存储在 flex 中的最佳解决方案

    $array                          =   array(); 
    $array["large_filename"]    =   $image_file_name; 
    $array["large_path"]        =   DIR_WS_IMAGES_TEMPIMAGES . $image_file_name;
    $setcookie              =   serialize($array); setcookie( "ImageCookie", 
    $setcookie, time()+(60*60*24*15) );
于 2013-12-09T07:24:01.823 回答