我的观点中有一个id
我视图中的代码
$jcid=$row->id;
我已经转到了我的模型
function getall12()
{
$id = $this->input->get('$jcid');
$this->db->select();
$this->db->from('jobs');
$this->db->where('job_cat =','$id');
$query4=$this->db->get();
return $query4->result();
return $query4->num_rows();
}
这是正确的方法吗
然后我应该如何将其加载到我的控制器并返回到我的视图
提前致谢。
amit
答案 0 :(得分:1)
您的方法是错误的,MVC运行控制器< - >模型 - >视图,因此您可以将数据从控制器传递到模型然后传递到视图。
如果您需要传递一个值,首先需要在控制器中获取它,然后将其传递给模型。
例如,在您查看(在表单中?)时,您必须执行以下操作:
echo form_open('your_controller');
<input type="text" name="jcid" value="<?php echo $row->id; ?>">
echo form_close();
并使用以下命令检索控制器中的值:
$jcid = $this->input->get('jcid');
现在将其传递给模型:
$result = $this->your_model->getall12($jcid);
并在您的模型中:
function getall12($id)
{
$this->db->select();
$this->db->from('jobs');
$this->db->where('job_cat =','$id');
$query4=$this->db->get();
return $query4->result();
return $query4->num_rows();
}
答案 1 :(得分:0)
为什么你不做控制器
$data['jcid']=$row->id;
但当然要做一个foreach循环
然后你有控制器,只是传递给视图
答案 2 :(得分:0)
Christian Giupponi写的是关于一切的事情。我只想添加另一种方法,通过使用这样的URI在视图和控制器之间传递值。
在您看来:
echo form_open('/controller/method/id');
或者它也适用于锚:
echo anchor('/controller/method/id', 'Save ID');
然后在你的控制器中:
$id = $this->uri->segment(3);
答案 3 :(得分:0)
目前我正在使用此方法来完成它:
查看代码
function detail(id)
{
jConfirm("Check Detail?","Confirm",function(r){
if(r)
{
$.post("<?php echo site_url('info/detail'); ?>",
{
id : id
},function(data){
alert(data);
});
}
});
}
控制器代码
public function detail()
{
$this->load->model('your_model_name');
$jcid = $this->input->post('id);
$result = $this->your_model_name->getall12($jcid);
echo $result;
}
查看代码
function getall12($id)
{
$this->db->select();
$this->db->from('jobs');
$this->db->where('job_cat =','$id');
$query4=$this->db->get();
return $query4->result();
return $query4->num_rows();
}