【问题标题】:CakePHP: Session is lost after calling an action from a pluginCakePHP:从插件调用操作后会话丢失
【发布时间】:2012-04-03 11:50:26
【问题描述】:

我有一个使用 jquery uploadify 上传文件的插件。从此插件调用方法后,会话丢失。我不再登录了。

有没有办法让这个插件的所有页面都公开?什么会导致这种行为?

谢谢。

【问题讨论】:

    标签: php session cakephp upload uploadify


    【解决方案1】:

    您需要保留您的会话,将您的会话 ID 与上传的 POST 数据一起传递。

    发送完毕后,使用以下命令重新启动会话:

    $this->Session->id( $this->data['Model']['phpsessid'] );
    $this->Session->start();
    

    在你的beforeFilter();

    这将导致您的会话恢复。它崩溃的原因是因为 Flash 是一个完全不同的用户代理。

    【讨论】:

    • 我所做的是创建了一个名为“SessionRescue”的组件,该组件加载到 app_controller.php 中。使用其中的设置/初始化功能来初始化您的会话。这是一种奇特的方式,因为组件将在您的应用程序 beforeFilter 之前得到处理。
    猜你喜欢
    • 1970-01-01
    • 2014-12-29
    • 2018-04-14
    • 1970-01-01
    • 1970-01-01
    • 2014-04-18
    • 2012-09-29
    • 2016-01-21
    • 1970-01-01
    相关资源
    最近更新 更多