代码之家  ›  专栏  ›  技术社区  ›  superUntitled

php:flash upload神秘定义$_session['var']的可能原因

  •  1
  • superUntitled  · 技术社区  · 15 年前

    我无法定义会话ID。

    在表单通过Ajax/jQuery查询发布到的页面上调用会话变量。

    会话变量在其他每一页上都被调用,没有问题。变量是在用户登录时设置的,并由auth.php文件检查。php文件发现会话变量很好,但是insert.php文件会发出一个错误:“undefined index:var….”。

    会话变量丢失是否有原因?

    编辑: 我在auth.php文件中调用session_start。如果我尝试启动另一个会话,将收到一条错误消息。

    是否可能由于文件通过Ajax请求发布到而找不到会话变量?

    编辑/回答: 我发现了什么问题。我使用的是Flash上传程序,当用Flash上传时,会话会丢失。哦,多好的一晚啊。

    谢谢你的帮助!

    3 回复  |  直到 15 年前
        1
  •  1
  •   uuɐɯǝʃǝs    15 年前

    “insert.php”页是否已启动会话?这可能是原因。

    如果php设置未设置为自动启动,请尝试启动它。

    session_start();
    

    我还发现打印出来的美元课程有时很方便。

    print_r($_SESSION);
    

    根据我的经验,还有另一种可能,即从不同的主机/servername/ip号调用另一个文件,这导致找不到会话变量。尽管这种可能性很小。

    在你的情况下,试着检查它以防万一。

        2
  •  1
  •   superUntitled    15 年前

    我发现了什么问题。我使用的是Flash上传程序,当用Flash上传时,会话会丢失。

        3
  •  0
  •   lfx    15 年前

    如果重定向时不包含insert.php,则可以使用 session_start(); ,因为会话不存在于该页面中,据我所知,PHP会话只在一个页面中工作,没有额外的配置。