更新-codeigniter php
当更新用户的详细信息时,数据库将更新所有信息,但当页面刷新时,会显示以前的信息,除非用户注销并重新登录,否则不会更新。我是CodeIgniter的新手。如果有人能帮助我或者告诉我该怎么做,我会非常感激。提前谢谢 这是我的模型:更新-codeigniter php,php,codeigniter,Php,Codeigniter,当更新用户的详细信息时,数据库将更新所有信息,但当页面刷新时,会显示以前的信息,除非用户注销并重新登录,否则不会更新。我是CodeIgniter的新手。如果有人能帮助我或者告诉我该怎么做,我会非常感激。提前谢谢 这是我的模型: function updateAccount($submit_userid, $submit_phone, $submit_address, $submit_eaddress) { $this->db->where("intMemberID", $s
function updateAccount($submit_userid, $submit_phone, $submit_address, $submit_eaddress) {
$this->db->where("intMemberID", $submit_userid);
$this->db->update("tblMembers", array(
"strPhoneNumber" => $submit_phone,
"strMemberAddress" => $submit_address,
"strEmailAddress" => $submit_eaddress,
));
}
这是我的控制器:
class UpdateController extends CI_Controller {
public function updateAccount() {
$this->load->model('userModel');
$data['userdata'] = $this->session->userdata('userobject');
$submit_userid = $this->input->post('userid');
$submit_phone = $this->input->post('phone');
$submit_address = $this->input->post('address');
$submit_eaddress = $this->input->post('eaddress');
$this->userModel->updateAccount($submit_userid, $submit_phone, $submit_address, $submit_eaddress);
$this->load->view('updateView', $data);
}
}
因为您显示了从上一个会话中获取的旧数据。直接从数据库读取数据并在视图中显示它您的用户数据是从会话而不是数据库中获取的,您有:
$data['userdata'] = $this->session->userdata('userobject');
这些数据很可能在用户登录时被放入会话中,从而导致您的问题。您需要将数据源更改为
$data['userdata'] = $this->userModel->returnAccount($this->user_id);
或者使用任何检索数据的方法,从数据库中获取数据。您的模型中有任何returnAccount方法吗?我假设您不是编写它的人。什么是
$this->session->userdata('userobject')
它在哪里填充???您发送到视图的数据是在更新之前检索的,请在更新之后尝试获取userdata