Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Flashdata在视图中为空_Php_Codeigniter - Fatal编程技术网

Php Flashdata在视图中为空

Php Flashdata在视图中为空,php,codeigniter,Php,Codeigniter,在控制器的末尾,我有以下代码: print_r($this->session->all_userdata()); $this->load->view('common/site_header'); 在我的site\u头文件的第一行,我有: print_r($this->session->all_userdata()); 第一个打印\u r包含: [flash:new:error] => Formulier niet correct ingevuld.

在控制器的末尾,我有以下代码:

print_r($this->session->all_userdata());
$this->load->view('common/site_header');
在我的
site\u头文件的第一行,我有:

print_r($this->session->all_userdata());
第一个
打印\u r
包含:

[flash:new:error] => Formulier niet correct ingevuld.
在我重新提交第二个
print\u r
包含的表单后,
site\u header
文件中的
print\u r
不包含此条目:

[flash:old:error] => Formulier niet correct ingevuld.
在我看来,该视图似乎有一个不同的会话对象,并且是一个请求或其他什么


如何在同一请求的视图中获取flash数据?

flash数据仅可用于下一个请求,请使用
$this->session->userdata()相反

会话对象在CI中全局可用。它只有一个实例,因此您的控制器和视图共享它。在我看来,在显示视图之前,您正在重置flashdata。您是否定义了重置flashdata的挂钩?您可以在查看之前尝试$this->session->keep_flashdata(var)吗?阿洛斯,你在你的模型或控制器中设置了flashdata吗?我将flashdata直接设置在我的控制器的打印上方。我还确认,在这个请求中,会话构造函数被调用了两次。我在自动加载中有会话,我没有任何挂钩,正如您所看到的,我在视图文件中的第一个打印和打印之间没有任何代码FlashData仅可用于下一个服务器请求。加载视图不是服务器请求,您可以使用重定向(这是一个服务器请求)到加载适当视图的函数。可能会有帮助吗?我对如何使用flashdata有错误的理解,谢谢flashdata仅适用于下一个服务器请求,而不是第二个服务器请求。如果您想为其他请求保留它,您需要使用
$this->session->keep_flashdata('item')