【发布时间】:2017-12-10 10:52:25
【问题描述】:
我有一个 CodeIgniter Web 应用程序使用 foreach 为 user 插入数据然后如果提交的数据被成功插入,我创建了一个名为 sc_msg[] 的 flashdata 消息。但我不知道如何在 flashdata 上调用它。
$user = $this->input->post('user', TRUE);
foreach ($user as $u)
{
$this->model->insert($u);
$sc_msg[] = '- User '.$u.'has been successfully registered<br>';
}
这是我在视图中调用它的代码。
<?php if ($this->session->flashdata('warning'))
echo $this->session->flashdata('message'); ?>
我想要这样的消息:
- 用户
abc已成功注册- 用户
bca已成功注册- 用户
qwe已成功注册- 用户
ewq已成功注册
所有sc_msg[] 都存储在message 上,所以我不需要在视图中使用FOR 或FOREACH 来调用它。
问题出在我的控制器上,我正在尝试设置消息:
$this->session->set_flashdata('message', $sc_msg);
它只是打印数组,所以我尝试将$sc_msg更改为$sc_msg[],结果错误:无法使用[]进行读取。
我也尝试在set_flashdata 中使用foreach,但失败了。意外的 foreach。
然后我尝试像这样设置 flashdata:
$this->session->set_flashdata('message', $sc_msg[0].$sc_msg[1]);
这是打印结果,但只有索引0 和索引1。结果:
- 用户
abc已注册成功- 用户
bca已注册成功
还有 2 条消息未调用用户 qwe 和 ewq。
我不知道如何调用flashdata 中的消息。但是,请不要给我 for loop 解决方案。谢谢。
【问题讨论】:
标签: php codeigniter