我了解了flashdata,并决定使用它来显示基于数据库交互的消息.
例如,如果没有行受到影响,我想显示Post id无效或不存在!
在我的模型
function delete_post($post_id) { $this->db->where('user_id',$user_id); $this->db->where('post_id',$post_id); $this->db->delete('posts'); if ($this->db->affected_rows() == 0) { $this->session->set_flashdata('result','Post id is invalid or does not exist!'); redirect('/posts/management'); return FALSE; } else { redirect('/posts/management'); return TRUE; } }
在我看来
if ($this->session->flashdata('result') != ''): echo $this->session->flashdata('result'); endif;
这似乎工作正常,但在CI文档中没有例子如何在MVC之间传递flashdata.我很担心..我正在做这个吗?
编辑:我似乎从先前的尝试中离开了FALSE和TRUE.我可能不需要这个.
会话数据随时可用于应用程序的任何位置.从视图文件直接调用它是适当的,因此它将其设置在Controller中.
没有必要将其作为数据传递给$this-> load-> view() – 它是多余的.为什么在这种情况下首先将它分配给flashdata?
你这样做的方式是正确的.
编辑:我刚刚看到你正在模型中设置,而不是控制器 – 这是非常有争议的.我建议从您的模型呼叫中返回一个值,并根据它在Controller中设置消息.
原文地址:https://www.jb51.cc/php/139731.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。