我将codeigniter flashdata中的数组保存为
//Show success message
$data = array(
'message' => 'My message',
'message2' => 'New Message'
);
$this->session->set_flashdata($data);
也试过
$this->session->set_flashdata('myData', $data);
重定向我试图检索的页面
echo $this->session->flashdata('message');
哪个对我不起作用
print_r($this->session->flashdata('myData'));
无效
如何将flashdata设置为数组?
答案 0 :(得分:0)
将flashdata保存在数组中,例如:
$data = array(
'message' => 'My message',
'message2' => 'New Message'
);
$this->session->set_flashdata("someone",$data);
redirect("home","refresh");
And in view:
print_r($this->session->flashdata('someone'));
答案 1 :(得分:0)
示例:来自其他帖子。
示例1
if($insert_status){
$notification = "Record Inserted";
} else {
$notification = "Insertion Failed";
}
$this->session->set_flashdata('notification', $notification);
redirect('controller/method','refresh');
示例2
$notification = array(
'message' => 'test',
'message_one' => 'text'
);
$this->session->set_flashdata('notification', $notification);
redirect('controller/method','refresh');
How to use codeigniter flash variable?
http://www.codeigniter.com/user_guide/libraries/sessions.html
您必须将回显的代码放在您重定向到的控制器的视图中。
<?php echo $this->session->flashdata('notification');?>
自举
<?php if ($this->session->flashdata('notification')) { ?>
<div class="alert alert-success">
<i class="fa fa-check-circle"></i> <?php echo $this->session->flashdata('notification'); ?>
</div>
<?php } ?>
答案 2 :(得分:0)
对于您的情况,当您使用$this->session->set_flashdata('myData', $data);
时,请尝试使用此
$myData = $this->session->flashdata('myData');
echo "Message: ".$myData['message'].PHP_EOL;
echo "Message2: ".$myData['message2'];
将解决您的问题。
答案 3 :(得分:0)
在控制器
$this->session->set_flashdata('message_name', 'This is my message');
redirect(base_url(),$data);
在视图页面
<?php echo $this->session->flashdata('message_name'); ?>