这是我的数据的MVC流。在模型中,我希望基于“名称”字段来更新“显示”字段。$ gadget_id保留了“名称”,并基于该名称希望从$ updateDisplay的值更新“显示”字段。但是我收到“显示”字段已更新但未基于$ gadget_id的“名称”的错误。
function updateText($gadget_id, $updateDisplay){
$data = array(
// 'name'=>$gadget_id,
'display'=>$updateDisplay
);
// $this->db->update('gadgets',array('name'=>$gadget_id, 'display' => $updateDisplay));
$this->db->update('gadgets',$data);
$this->db->where('name',$updateDisplay);
}
function updateText(){
if ($this->session->userdata('logged_in')) {
$this->load->model('database_model');
$data['gaget']= $this->database_model->get_gaget();
$data['meta'] = $this->dbmodel->get_meta_data();
$default_template = $this->input->post('display');
$updateDisplay = trim($default_template, "/");
$gadget_id = $this->input->post('gadget_id');
//echo $gadget_id;
$this->database_model->updateText($gadget_id, $updateDisplay);
//$this->session->set_flashdata('mess','Data added sucessfully !!! ');
$this->load->view('bnw/templates/header', $data);
$this->load->view('bnw/templates/menu', $data);
$this->load->view('bnw/gadget/gadgetsListing',$data);
$this->load->view('bnw/templates/footer', $data);
} else {
redirect('login', 'refresh');
}
}
<div id='sub_gadget'>
<div id='title_in_collection'><?php echo $data->name; ?></div>
<div id='description_in_collection'><?php echo $data->type;?> </div>
Where to display:
<?php echo form_open('gadgets/updateText'); ?>
<select name="display">
<?php
foreach($var as $temp)
{
echo "<option value=".$temp."/>".$temp."</option>";
}
?>
</select>
<input type="hidden" value="<?php echo $data->name; ?>" name="gadget_id">
<input type='submit' value='Add Gadget' id='btn' name='submit'>
<?php echo form_close(); ?>
既然$gadget_id
拥有name
,查询应该是这样的-
function updateText($gadget_id, $updateDisplay)
{
$data = array(
'display'=>$updateDisplay
);
$this->db->where('name',$gadget_id);
$this->db->update('gadgets',$data);
}
如果$gadget_id
确实拥有名称,则应将变量名称更改为$gadget_name
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句