希望我能正确解释这一点......
我正在使用Codeigniter进行表单验证。 如果我的表单将字符串id返回给控制器,我该如何使用它来执行数据库查询并使用结果数组来执行更新......
这有意义吗?
function form($id) {
if ($this->form_validation->run('') == false) {
//...
}
else {
// Query database where strId = $this->input->post('strId')
// Put results into an array called $data
// Update database where id = $this->input->post('id')
$this->db->where('id', $this->input->post('id'));
$this->db->update('database', $data);
}
}
答案 0 :(得分:2)
控制器:
//... (if valid) ...
$this->load->model('myform'); //loads myform_model.php
$this->myform->update(); //call the update method
模型(myform_model.php):
function update(){
$this->load->database();
$this->db->where('id', $this->input->post('id'));
$this->db->update('tableName', $data);
}
注意:由于您使用的是“更新”,因此您的ID必须已存在于数据库表中。要插入数据,请使用$ this-> db-> insert();
答案 1 :(得分:1)
很好的代码优秀:
功能更新($ id,$ data){
$this->db->where('id', $this->input->post('$id'));
$this->db->update('tableName', $data);
}
或者像这样:
功能更新($ id,$ data){
$this->db->where('id', '$id');
$this->db->update('tableName', $data);
}