我想发送变量' $msg_notf
'从我的控制器到我的视图,但每次我这样做,codeigniter返回错误"未定义的变量:msg_notf"
我的控制器,
public function send_message(){
$this->load->model('model_student');
$msg_send=$this->model_student->send_message($this->session->userdata('roll_no'));
if($msg_send==true){
$result['msg_notf']='message sent';
$this->load->helper('url');
redirect('http://localhost/CheckIn_System/index.php/student',$result);
}else{
$result['msg_notf']='unable to send message';
$this->load->helper('url');
redirect('http://localhost/CheckIn_System/index.php/student',$result);
}
}
在视图中,
echo $msg_notf;
答案 0 :(得分:0)
在控制器
中public function __construct()
{
parent::__construct();
$this->load->helper('url');//load once Controller load
}
public function send_message()
{
$this->load->model('model_student');
$msg_send=$this->model_student->send_message($this->session->userdata('roll_no'));
if($msg_send==true){
$result['msg_notf']='message sent';
$this->load->view('student',$result);//passing data to view
}else{
$result['msg_notf']='unable to send message';
$this->load->view('student',$result);//passing data to view
}
}
在视图中
foreach ($msg_notf as $new_msg_notf)
{
echo $new_msg_notf['your_data_field'];//showing your data
}
答案 1 :(得分:0)
您的控制器可能如下所示:
public function __construct(){
parent:: __construct();
$this->load->helper('url');
}
public function send_message(){
$this->load->model('model_student');
$msg_send=$this->model_student->send_message($this->session->userdata('roll_no'));
if($msg_send==true){
$result['msg_notf']='message sent';
$this->load->view('path', $result); // path of the
http://localhost/CheckIn_System/index.php/student
}else{
$result['msg_notf']='unable to send message';
$this->load->view('path',$result);
}
}
答案 2 :(得分:0)
如果您想使用重定向,最好的想法是使用Flashdata。
是一次性会话var在您使用之前一直存在,然后被删除。您需要致电:$this->load->library('session');
声明:
$this->session->set_flashdata('item', 'value');
阅读:
$this->session->flashdata('item');
答案 3 :(得分:0)
https://ellislab.com/codeigniter/user-guide/helpers/url_helper.html
redirect()函数对指定的URI执行“标头重定向”。可选的第二个参数允许您在“位置”方法(默认)或“刷新”方法之间进行选择。
如果要将数据传递到视图中,请使用
$this->load->view("View_file", $result);
并在视图页面上访问它
echo $msg_notf;
使用重定向功能,您应该使用Session(Userdata或Flashdata) 在这种情况下,首选Flashdata。