PHP 无法检测 Firefox 中的会话值

发布于 2024-11-08 12:49:02 字数 437 浏览 0 评论 0原文

在 IE 中,会话有效,但在 Firefox 中,它始终返回空值。

我在 index.php 中设置了 $_SESSION['apple']='1'

当执行 Flex 4/flash 应用程序时,该应用程序将允许用户使用 filereference 浏览图像文件以上传到服务器(这个应用程序是图像上传器),然后该文件将传递到 secondary.php 以验证它是否是图像。

在 secondary.php 本身中,我有一个函数需要检索在 index.php 中设置的 $_SESSION['apple'] 值,它在 Firefox 和 Chrome 中总是返回空字符串,但在 IE9 上工作。

有人在 Firefox 和 Chrome 上遇到过与 $_SESSION 相同的问题吗?

如何确保 secondary.php 可以检索 $_SESSION?

In IE, the session work, but in Firefox, it always return empty value.

I have set $_SESSION['apple']='1' in index.php

When executing a Flex 4/flash app that will allow user to browse an image file using filereference for upload to the server (this app is image uploader), the file will then pass to second.php to validate whether it is an image.

In the second.php itself, I have a function that need to retrieve $_SESSION['apple'] value which was set in index.php, it always return empty string in Firefox and Chrome but work on IE9.

Has anyone came across the same problem with $_SESSION on Firefox and Chrome?

How do I make sure the second.php can retrieve $_SESSION?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

筑梦 2024-11-15 12:49:02

Flash/Flex 等 Adob​​e 产品不会在 IE 以外的其他浏览器中将浏览器 cookie 传递回服务器。对于来自 flash 的每个请求,您都需要自行将会话 ID 传递回服务器。

在 PHP 中,您可以使用以下代码启用会话:

 if (isset($_GET['session_id'])) session_id($_GET['session_id']);
 session_start();

如果它对您不起作用并且您安装了 suhosin/hardenet 补丁,您可能必须关闭 session_cookie 加密。 (不记得确切的选项 - 我的一个同事曾经偶然发现过这样的问题)

Adobe Products like Flash/Flex do not pass browser cookies back to the server in other browsers than IE. You need to pass the session ID back to the server on your own for every request from flash.

in PHP, you can enable the session with the following code:

 if (isset($_GET['session_id'])) session_id($_GET['session_id']);
 session_start();

If it doesn't work out for you and you have the suhosin/hardenet patch installed, you might have to turn session_cookie encryption off. (can't remember the exact option - one of my corworks once stubled upon such an issue)

很酷不放纵 2024-11-15 12:49:02

由于 PHP 运行在服务器上,因此不太可能是浏览器的结果。最常见的问题是:您是否在所有以任何方式使用 $_session 的 php 文件中使用了 session_start()

As PHP runs on the server, it's not very likely it's the result of the browser. Most common problem is: did you use session_start() in all your php files that use the $_session in any way?

话少情深 2024-11-15 12:49:02

尝试使用 AMFPHP,它将帮助您使用 PHP + Flex 进行开发。

http://silexlabs.org/amfphp/

Try using AMFPHP, it will help you develop with PHP + Flex.

http://silexlabs.org/amfphp/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文