更新Codeigniter表单 - 刷新

时间:2016-06-08 08:56:19

标签: php

我有一个表单,它从数据库中检索值并通过提交表单来更新它。

当我第一次访问页面时,它会工作,它会检索值,但如果我通过表单更新值,则只有在手动刷新页面后才会检索新值。 如何自动刷新?

此外,如果我正在访问该页面,不进行更新,并刷新它,它被删除的所有内容,包括数据库中的值。

这是控制器:

public function edit_profile()
{

    $id=$_SESSION['user_id'];
    $this->load->model('retrieve');

    $upd = array
   (
     'Name' => $this->input->post('name'),
     'surname' => $this->input->post('surname'),
     'Id_loc' => $this->input->post('id_loc')   
    );        

    $data['info']=$this->retrive->select_Info($id);           
    $this->retrieve->update_info($id,$upd);
    $this->load->view('edit_profile', $data); 

}

这是模特:

function update_info($id,$data){
    $this->db->where('id', $id);
    $this->db->update('users', $data);
}    

2 个答案:

答案 0 :(得分:6)

您的代码将如下所示:具有两个函数

        public function edit_profile()
            {

               $id=$_SESSION['user_id'];        

                $data['info']=$this->retrive->select_Info($id);           
                $this->load->view('edit_profile', $data);
        }

    public function saveUpdate()
    {
    $id=$_SESSION['user_id'];
                $this->load->model('retrieve');

                $upd = array
               (
                 'Name' => $this->input->post('name'),
                 'surname' => $this->input->post('surname'),
                 'Id_loc' => $this->input->post('id_loc')   
                ); 
    $update = $this->retrieve->update_info($id,$upd);
if($update)
{
redirect('YURCTRLER/edit_profile');
}
    }

答案 1 :(得分:5)

完成更新后,将以下代码添加到控制器:

debug($showSelectedCityName)

redirect($this->uri->uri_string());

对于删除的情况,我认为您提供的代码不足以推断出问题: - (