2013-02-12 16 views
2

嘿家伙我无法通过codeigniter中的表单运行更新查询。没有返回错误,但查询不会在数据库中更新。应该注意的是,在运行插入查询的同一页上还有另一个表单可以正常工作。Codeigniter更新查询不适用于表格

查看:

  <?php 
       $modify = array(
        'id' => 'modify-form', 
        'class' => ''      
       ); 
       echo form_open('main/modify_idea', $modify); 
       $ta_modify = array(
        'id' => $row->id, 
        'name' => 'ta_modify', 
        'label' => 'ta_modify', 
        'placeholder' => $row->idea, 
        'method' => 'Post' 
       ); 
       echo form_textarea($ta_modify); 
       echo form_hidden('facebook_id', $session['id']); 
       echo "<div id='button'>"; 
       echo form_submit('submit', 'Post'); 
       echo "</div>"; 
       echo form_close(); 
      ?> 

控制器:

public function modify_idea() { 
    $this->load->model('idea'); 
    $this->idea->modify_idea(); 
    redirect('main/members'); 
} 

型号:

public function modify_idea() { 
    $data = array( 
     'id' => $this->input->post('id'), 
     'idea' => $this->input->post('ta_modify'), 
     'facebook_id' => $this->input->post('facebook_id') 
    ); 

    $query = $this->db->query("UPDATE idea SET `idea` = ? WHERE `id` =?", array($data['idea'], $data['id'])); 
    return $query; 
} 

我使用下面的资源,但仍没有运气:
CodeIgniter MySQL query not working

CodeIgniter MySQL Query not returning any data, even though there definitely is data to be returned!

http://www.tutorialspoint.com/mysql/mysql-update-query.htm
http://ellislab.com/codeigniter/user-guide/database/active_record.html#delete

一如往常,感谢您的帮助!

+1

好吧,我不知道你在做什么。但我认为你的问题要么是在重定向中,要么是在内部使用模型。重定向可能会杀死你的过程,并在完成之前重定向和模型帖子我不确定这是如何codeigniter工作,即使它不是一个问题通过mvc,但可能是codeigniter结构的问题 – 2013-02-12 01:36:42

+0

我通过'id'作为隐藏变量,并修复它。谢谢你的帮助! – 2013-02-12 02:17:40

+0

请标记你的答案已经解决(你必须说你在这种情况下自己解决它),所以其他人不认为你仍然需要帮助。感谢名单! – jmadsen 2013-02-12 04:13:20

回答

0

从控制器传递您的文章数据模型

更改您的控制器代码:

public function modify_idea() { 
    $this->load->model('idea'); 
    $data = array( 
     'id' => $this->input->post('id'), 
     'idea' => $this->input->post('ta_modify'), 
     'facebook_id' => $this->input->post('facebook_id') 
    ); 
    $this->idea->modify_idea($data); 
    redirect('main/members'); 
} 

模型做到这一点

public function modify_idea($data) { 
    $query = $this->db->query("UPDATE idea SET `idea` = ? WHERE `id` =?", 
          array($data['idea'], $data['id'])); 
    return $query; 
} 
0

请把您的文章从数值控制器模型。然后它会工作。