如何在CakePHP中创建,编写和读取会话数据?

前端之家收集整理的这篇文章主要介绍了如何在CakePHP中创建,编写和读取会话数据?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
任何人都可以举例说明如何创建会话并向其写入数据.我已经看到了如何使用write命令将数据写入会话的语法.但是如何创建会话并检索其中的值.

在我的应用程序中,我有两个数据,form_id和user_id需要在所有页面请求中使用.那么如何将其保存为会话变量并在整个应用程序中使用它?

编辑

function register()
{
    $userId=$this->User->registerUser($this->data);
    $this->Session->write('User.UserId',$userId);
    //echo "session".$this->Session->read('User.UserId');
    $this->User->data=$this->data;
    if (!$this->User->validates())
    {
    $this->Flash('Please enter valid inputs','/forms' );
      return;   
    }

$this->Flash('User account created','/forms/homepage/'.$userId);            

}

如何在$this-> Flash(‘用户帐户创建’,’/ forms / homepage /’.$userId)中使用会话变量’User.UserId’而不是$userId;

我可以在所有视图文件中使用此变量,因为在所有页面请求中我还传递了userId吗?

编辑2

我有2个控制器,用户和表单.我将userid写入users_controller中的会话变量.我有一个名为homepage.ctp的视图文件,其操作在forms_controller中.现在我如何使用主页中users_controller中定义的会话变量?对不起,如果我问愚蠢的问题.我经历了蛋糕书,但我的怀疑并没有被清除.我也在尝试编写错误的编码方法,所以请帮助我.

编辑3

我有一个会话变量’uid’,它是控制器主页操作中的用户ID.

$this->Session->write('uid',$this->data['Form']['created_by']);

我需要在同一个控制器的设计动作方法中使用相同的变量.
当我给

$uid=$this->Session->read('uid');
            echo "uid: ".$uid;

价值没有回应.

我不能在同一个控制器中使用会话变量吗?

面包店是你最好的朋友:

http://book.cakephp.org/view/398/Methods

您的所有会话读/写都属于控制器:

$this->Session->write('Person.eyeColor','Green');

echo $this->Session->read('Person.eyeColor'); // Green

猜你在找的PHP相关文章