我正在通过ahref标记调用控制器功能,我想将当前记录no传递给控制器以更新记录当前值存储在$ currentID中,并且我将此值传递给输入类型..但是我没有从视图页面获取值。.我尝试了var_dump($ id)..它显示为null 控制器代码进行更新:
public function update($id='')
{
$session_data = $this->session->userdata('logged_in');
$data['username'] = $session_data['username'];
$id=$this->input->post('update');
echo "<pre>";var_dump($id);
$dc=$this->input->post('dc');
if($dc=='c'){
$amount=$this->input->post('credit1');
}
else if ($dc=='d') {
$amount=$this->input->post('debit');
}
$data=array(
'date' =>$this->input->post('TDate'),
'code' =>$this->input->post('TName'),
'project' =>$this->input->post('TName1'),
'part' =>$this->input->post('part1'),
'part1' =>$this->input->post('part2'),
'dc'=>$this->input->post('dc'),
'amount'=>$amount,
);
$this->db->where('recno', $id);
$this->db->update('daybook', $data);
$this->session->set_flashdata('Add1', 'Updated Successfully');
redirect('BookKeeping/daybook','refresh');
}
通话更新
<a href="<?=site_url('BookKeeping/update/'.$currentID)?>" class="btn btn-info btn-"><i class="icon-new position-left">
<input type="hidden" name="update" id="id" value="<?php echo $currentID?>">
</i>Update</a>
帮我将当前值传递给控制器。谢谢!
答案 0 :(得分:2)
您正在通过url发送值 改变这个
$id=$this->input->post('update');
收件人
$id=$this->uri->segment('3');
答案 1 :(得分:1)
删除输入字段。您不能使用
传递任何输入数据<a href="<?=site_url('BookKeeping/update/'.$currentID)?>" class="btn btn-info btn-"><i class="icon-new position-left"></i>Update</a>
尝试
public function update($id=''){
$session_data = $this->session->userdata('logged_in');
$data['username'] = $session_data['username'];
$id=$id;
echo "<pre>";var_dump($id);
$dc=$this->input->post('dc');
if($dc=='c'){
$amount=$this->input->post('credit1');
}
else if ($dc=='d') {
$amount=$this->input->post('debit');
}
$data=array(
'date' =>$this->input->post('TDate'),
'code' =>$this->input->post('TName'),
'project' =>$this->input->post('TName1'),
'part' =>$this->input->post('part1'),
'part1' =>$this->input->post('part2'),
'dc'=>$this->input->post('dc'),
'amount'=>$amount,
);
$this->db->where('recno', $id);
$this->db->update('daybook', $data);
$this->session->set_flashdata('Add1', 'Updated Successfully');
redirect('BookKeeping/daybook','refresh');
}
答案 2 :(得分:0)
正如我所看到的有关您的控制器代码的问题一样,您尚未在变量$currentID
中传递任何可能未定义的值,因此请首先尝试var_dump
$currentID
变量并检查其值。
为功能起见,请尝试分配静态ID。您的静态值将作为参数传递给方法。一旦确定静态值有效,就可以继续找出$currentID
变量中的问题所在。
$data['currentID'] = $someValueFromDB;
$this->load->view('some_view.php',$data);
这样,您的值将被传递到视图,确保值正确地传递或在视图上生成。 您正在控制器上以正确的方式传递数据,没问题。