使用codeigniter将多个值更新到mysql数据库

时间:2011-07-10 15:38:54

标签: codeigniter

我的表格中的帖子数据是

Array
(
    [radiogroup_1] => 1
    [radiogroup_2] => 4
    [radiogroup_4] => 11
    [submit] => submit
)

我的模特是

 function add_votes(){

    foreach($POST[] as $k=> $v){
    $id = $v;
    }

    $this->db->where('answerid','radiogroup_'. $id );

    $this->db->set('votes', 'votes+1',FALSE);
    $this->db->update('vote_table');


 }
显然,它不起作用。

2 个答案:

答案 0 :(得分:1)

也许

function add_votes(){
    foreach($_POST[] as $k=> $v){
        $this->db->where('answerid','radiogroup_'. $v );
        $this->db->set('votes', 'votes+1',FALSE);
        $this->db->update('vote_table');
    }
}

function add_votes(){
    foreach($_POST[] as $k=> $v){
        $this->db->where('answerid', $v );
        $this->db->set('votes', 'votes+1',FALSE);
        $this->db->update('vote_table');
    }
}

答案 1 :(得分:0)

不需要预先更新。只需使用一次更新表。

 function add_votes(){
 $radiogroup_1=$this->input->post('radiogroup_1');
 $radiogroup_2=$this->input->post('radiogroup_2');
 $radiogroup_4=$this->input->post('radiogroup_4');
$data=array('radiogroup_1'=>$radiogroup_1,'radiogroup_2'=>$radiogroup_2,'radiogroup_4'=>$radiogroup_4);
$this->db->where('answerid','radiogroup_'. $id );
$result=$this->db->update('vote_table',$data);
}