控制器不返回变量 [英] Controller does not return the variable
本文介绍了控制器不返回变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
表格可以通过AJAX成功提交,通知消息可以显示在窗口的jQuery(你的名字已经被成功更改!),但是当我提出一个空的形式,它不会返回消息失败。能否请你检查我的code和帮助我找到我的错误。
控制器:
$这个 - >负载>库('form_validation');
$这个 - >负载>模型('my_model');
$this->form_validation->set_rules('name','Name','required|trim|alpha|min_length[3]|xss_clean');
如果($这个 - > form_validation->运行()){
$ user_ID的= $这个 - >会话级>用户数据('USER_ID');
$ NAME = $这个 - >输入 - >后期('名');
如果($这个 - > model_users-> did_change_name($ user_ID的,$名)){
$数据=阵列(
message_ok'=> 你的名字已经被成功更改!
);
回声json_en code($的数据);
} 其他 {
$数据=阵列(
'信息'=> '失败'
);
回声json_en code($的数据);
}
}
解决方案
这是所有关于括号:)试试这个方法:
如果($这个 - > form_validation->运行()){
$ user_ID的= $这个 - >会话级>用户数据('USER_ID');
$ NAME = $这个 - >输入 - >后期('名');
如果($这个 - > model_users-> did_change_name($ user_ID的,$名)){
$数据=阵列(
message_ok'=> 你的名字已经被成功更改!
);
回声json_en code($的数据);
}
}
其他 {
$数据=阵列(
'信息'=> '失败'
);
回声json_en code($的数据);
}
Form can be successfully submitted via ajax and the notification message can be displayed in jquery window ("Your name has been successfully changed!")but when I submit an empty form it doesn't return the message "fail". Could you please check my code and help me to find my mistake.
Controller:
$this->load->library('form_validation');
$this->load->model('my_model');
$this->form_validation->set_rules('name','Name','required|trim|alpha|min_length[3]|xss_clean');
if($this->form_validation->run()) {
$user_id = $this->session->userdata('user_id');
$name = $this->input->post('name');
if ($this->model_users->did_change_name($user_id, $name)) {
$data = array(
'message_ok' => "Your name has been successfully changed!"
);
echo json_encode($data);
} else {
$data = array(
'message' => 'fail'
);
echo json_encode($data);
}
}
解决方案
It's all about parentheses :) Try this way:
if($this->form_validation->run()) {
$user_id = $this->session->userdata('user_id');
$name = $this->input->post('name');
if ($this->model_users->did_change_name($user_id, $name)) {
$data = array(
'message_ok' => "Your name has been successfully changed!"
);
echo json_encode($data);
}
}
else {
$data = array(
'message' => 'fail'
);
echo json_encode($data);
}
这篇关于控制器不返回变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文