donglie7268 2015-10-14 08:43 采纳率: 100%
浏览 51
已采纳

使用codeigniter更新数据无效

I am currently working on a project using codeigniter. As part of the project functionalities, it have edit or update function and I got some errors with it, its not working.Here are my codes as follows :

Workers_model

This the edit function or update .

   public function edit_workers_details ($worker_id, $data) {
            $this->db->where('worker_id', $worker_id);
            $this->db->update('worker_tb', $data);

            return $this->db->affected_rows();
        }

  public function get_worker_details ($worker_id) {
    $this->db->select();
    $this->db->from('worker_tb');
    $this->db->where('worker_id', $worker_id);

    $query = $this->db->get();
    return $query->result_array();
}

**Workers (controller)**

public function edit_worker ($worker_id) {

        if ($_POST) {
            $worker_details = array (
                'worker_fname' => $_POST['worker_fname']


            );

            $this->Workers_model->edit_workers_details($worker_id, $worker_details);
            redirect("Workers/index");
        }

        $data['details'] = $this->Workers_model->get_worker_details($worker_id);
        $this->load->view('Worker/updateWorker',$data);
}

updateWorker (view)

<center>
    <h1> Edit Worker Details </h1>
    <?php foreach ($details as $detail) {?>
        <form role="form" action= "<?php echo site_url("Workers/edit_worker/".$detail['worker_id']);?>" method="POST">

            Name: &nbsp;&nbsp;&nbsp; <input type="text" class="form-control" value = "<?php echo $detail['worker_fname'];?>" ><br />

            <button type="submit" class="btn btn-primary"> Update </button>

        </form>

    <?php } ?>

</center>

My problem now is that when I click the Update button it's not working and does not update data.What should I do? Any ideas or help is appreciated. Thanks

  • 写回答

2条回答 默认 最新

  • duanke2503 2015-10-14 08:56
    关注

    Your <input> field missing name attribute

    So final well form code is

    In View

    <center>
        <h1> Edit Worker Details </h1>
        <?php foreach ($details as $detail) {?>
            <form role="form" action= "<?php echo site_url("Workers/edit_worker/".$detail['worker_id']);?>" method="POST">
    
                Name: &nbsp;&nbsp;&nbsp; <input type="text" name="worker_fname" class="form-control" value = "<?php echo $detail['worker_fname'];?>" ><br />
    
                <button type="submit" class="btn btn-primary"> Update </button>
    
            </form>
    
        <?php } ?>
    
    </center>
    

    In Controller

    public function edit_worker ($worker_id) {
    
        $worker_fname = $_POST['worker_fname'];
    
        if(!empty($worker_fname))
        {
            $result = $this->Workers_model->edit_workers_details($worker_id, $worker_fname);
            if($result == 1)
            {
                $data['details'] = $this->Workers_model->get_worker_details($worker_id);
                $this->load->view('Worker/updateWorker',$data); 
            }
            else
            {
                echo 'Update Failed'
            }
    
        }
        else
        {
            echo 'worker_fname is empty'
        }    
    
    }
    

    In Model

    public function edit_workers_details ($worker_id, $worker_fname) {
        $data = array(
            'worker_fname' => $worker_fname
        );
    
        $this->db->where('worker_id', $worker_id);
        if(!$this->db->update('worker_tb', $data))
        {
            // Update Failed
            return $log = 0;
        }
        else
        {
            // Update Success
            return $log = 1;
        }
    
    }
    
    public function get_worker_details ($worker_id) 
    {
        $this->db->select();
        $this->db->from('worker_tb');
        $this->db->where('worker_id', $worker_id);
    
        $query = $this->db->get();
        return $query->result_array();
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!