2013-10-31 106 views
0

我是代碼Igniter.i中的新手,想更新特定的行更新。如何更新codeigniter中的特定行?

請幫幫我。

我查看文件

<div id="wrapper"> 
<div id="form"> 
<?php $query=$this->mod1->about_display()?> 
<?php if($query){ ?> 
<?php echo form_open('textarea/update_testimonial'); ?> 
<?php foreach($query as $row){ ?> 
<textarea name="update"><?php echo $row->testi; ?></textarea> 
<input type="submit" name="sub" value="UPDATE" /> 
</form> 
<?php } 

    } 
?> 
</div> 
</div> 

我的控制器文件

function update_testimonial(){ 

    $id = $this->input->get('id'); 
    $this->load->model('mod1'); 
    $this->mod1->about_display($id); 


} 

我的模型文件

function about_display(){ 
$id = $this->input->get('id'); 
$query=$this->db->where('id', $id); 
    $this->db->get('testimonials'); 
    if($query->num_rows()>0){ 
     return TRUE; 
    }else{ 
     return FALSE; 
    } 

}

請給我一個簡單的例子,所以我能做到這一點。我在CI方面很新。請幫助我。謝謝

+2

更好地檢查文檔... –

回答

1

控制器:

function update_testimonial(){ 
    $update = $this->input->post('update', True); 
    $id = (int) $this->input->get('id', False); ### THIS MAY need to be a $this->input->post() 
    $this->load->model('mod1'); 
    $this->mod1->update_display($update, $id); 
} 

型號:

function update_display($update, $id) { 
    $this->load->database(); 
    $this->db->where('id', $id); 
    $update = array('testi', $update); 
    $this->db->update('testimonials', $update); 
} 

基本上你從形式拉$_POST變量,將其發送到模型,並使用CodeIgniter的$this->db->update()功能更新該單行。您可以考慮在表單中添加一個<form type="hidden" name="id" />,以便通過POST有兩個重要變量。