【问题标题】:Codeigniter Session->userdata is nullCodeigniter 会话->用户数据为空
【发布时间】:2012-10-18 18:54:19
【问题描述】:

我的项目有几个从 session->userdata 数组中提取值的视图。 整个项目在我的开发机器上完美运行,但是当我将项目复制到服务器时,我发现 $this->session->userdata 为空。

这是在 session->userdata 数组中插入一些值的代码: 它在 Controller 中调用。

    $sessionArray = array(
            'web_id' => $id,
            'paperId' => $paperId,
            'prelimId' => $prelimId,
            'intakeId' => $intakeId,
            'finalId' => $finalId,
     );

     $this->session->set_userdata($sessionArray);

在我调用的视图文件中

var_dump($this->session->userdata);

返回的值为空。正如我之前提到的,该数组在我的开发计算机(运行 WAMP)上不是空的。有谁知道为什么?

【问题讨论】:

标签: php codeigniter session


【解决方案1】:

为了以 ASSOC 数组的形式检索所有会话数据,您可以使用 all_userdata() 方法。 (看看 CodeIgniter user guide),

您可以在 Controller 中编写它并将返回的值发送到视图,如下所示:

$data['userdata'] = $this->session->all_userdata();
$this->load->view('your/view.php', $data); // use $userdata in the view

注意:直接在 views may cause unexpected problems 中使用会话库。尝试在 Controller 而不是 View 中管理您的会话。

【讨论】:

  • 听从了你的建议,问题变得更奇怪了。现在,当我的视图加载时,var_dump($this->session->all_userdata()); 会导致页面完全空白。 Codeigniter 中开启了错误报告,并且在 var_dump 之后没有退出语句。正如我在上面的帖子中所说,这个问题只存在于网络服务器上。我的开发机器只是向我展示了一系列有用的信息。还有其他想法吗?
  • 试试this approach,好像配置有问题。
  • all_userdata() 已从最新的 codeigniter 会话库中删除。
【解决方案2】:

对不起,首先在答案块中发布............您将这些值分配给 $sessionArray。我的意思是在模型或控制器或视图文件中。

你是在视图文件中调用 var_dump($this->session->userdata) 吗?

你为什么不在控制器中调用它并将它作为数组传递给通过控制器查看文件。

在控制器中尝试这样的操作,当我提交用户名和密码时,我将从数据库中获取 $login 数组中的用户详细信息。

我会将这些详细信息发送到模型文件中这样的会话数组

$this->session->set_userdata('logged_in_user', $login);

之后在控制器中,如果我想使用会话数组中的用户名,我将使用如下所示。

$logged_in = $this->session->userdata("logged_in_user");
$model=array();
$model['logged_in_user']=$logged_in[0];

一旦我分配给 $model 数组后,我喜欢在视图文件中使用它,所以我会像这样将 $model 数组从控制器传递给视图文件

$this->load->view('view_file_path',$model);

您可以在视图文件中使用该数组,无论您希望如何从传递的数组中获取。

【讨论】:

  • 我认为您是在建议我从控制器传递数据。谢谢。
  • 是的,这对你来说很容易
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多