【问题标题】:Cakephp Session variable problemCakephp Session 变量问题
【发布时间】:2011-09-15 20:31:48
【问题描述】:

我有 2 个控制器,我在一个控制器中设置会话变量并尝试在另一个控制器中访问它。但它没有采用我分配的值。

在第一个控制器中,

$this->Session->write('category',$id);
echo $this->Session->read('category');  //Outputs 17 which is correct

在第二个控制器中,

echo $this->Session->read('category'); //Outputs images.jpg

我已经检查过了,会话变量类别从不采用 images.jpg 的值。

【问题讨论】:

  • 必须改变它;或者你在其他地方有问题。提供的代码没有任何问题。检查 - 您正在两个控制器中加载 Session 组件/帮助程序,并尝试使用没有其他任何内容的空白第三个控制器。

标签: php cakephp


【解决方案1】:

它可以是以下两种情况之一:

1)记得在app_controller中加载session组件

<?php
App::import('Lib', 'permission/Permission');
class AppController extends Controller {
    var $components = array('Session');
}
?>

2) 在 config 文件夹的 core.php 文件中,您可能将 session.start 变量设置为 false

Configure::write('Session.start', true);

这个变量表示是否自动启动会话。

编辑:对不起,我读错了,您正在某处更改变量尝试将变量的名称更改为 categoryid 或类似的名称,如果它有效,则意味着您确实在某处更改它。如果您在 linux 中,请执行 grep -R "$this->Session->write('category'"

【讨论】:

    猜你喜欢
    • 2011-12-19
    • 1970-01-01
    • 2010-11-10
    • 1970-01-01
    • 2011-04-26
    • 2010-12-08
    • 2011-12-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多