Php 我的codeigniter更新是否成功?
我正在使用代码点火器中的活动记录,我的控制器中有以下代码用于我的配置文件:Php 我的codeigniter更新是否成功?,php,codeigniter,codeigniter-2,Php,Codeigniter,Codeigniter 2,我正在使用代码点火器中的活动记录,我的控制器中有以下代码用于我的配置文件: $data = array( 'first_name' => $_POST['first_name'], 'last_name' => $_POST['last_name'], 'email_address' => $_POST['email_address'], 'gravatar_email' => $_POST['gravatar_email'] ); $this->
$data = array(
'first_name' => $_POST['first_name'],
'last_name' => $_POST['last_name'],
'email_address' => $_POST['email_address'],
'gravatar_email' => $_POST['gravatar_email']
);
$this->db->where('user_id', $session_data['id']);
$this->db->update('user_profiles', $data);
redirect('profile', 'refresh');
如何仅在更新成功与否时重定向?此外,我还想向我的用户显示一条消息。首先,您不应该直接访问
$\u POST
,这里有相关的帮助($this->input->POST('name')
,因为它们在正确使用时会清理数据)
其次,您可以使用类似于$this->db->infected_rows()的东西
确定更改了多少行,然后判断发生了什么
在您的更新中,您可能会更新1个元素或x,在执行重定向之前,您需要对此进行测试
希望这能有所帮助,当所有其他方法都失败时,请阅读CI指南,它写得非常好
参考资料:但是
$this->db->受影响的行()如果更新了相同的值,code>将返回0。对吗?如果添加类似于current time的字段,则即使表单值相同,记录的值也将显示为已更新(如果您需要)