当前在我的控制器中,当添加新数据时,我验证了输入,并且如果有任何问题,它让用户知道,否则它将数据传递给模型以插入到数据库中Codeigniter数据库插入失败
我现在该如何去检查在模型中正确工作的插入语句,并让用户知道,如果没有。
下面的插入语句是否返回true或false,然后可以返回到控制器?
$this->db->insert('Faviroute_Addresses', $address_data);
感谢所有帮助
当前在我的控制器中,当添加新数据时,我验证了输入,并且如果有任何问题,它让用户知道,否则它将数据传递给模型以插入到数据库中Codeigniter数据库插入失败
我现在该如何去检查在模型中正确工作的插入语句,并让用户知道,如果没有。
下面的插入语句是否返回true或false,然后可以返回到控制器?
$this->db->insert('Faviroute_Addresses', $address_data);
感谢所有帮助
您可以使用
if($this->db->insert('Faviroute_Addresses', $address_data))
{
// Code here after successful insert
return true; // to the controller
}
或者你可以使用
$this->db->insert('Faviroute_Addresses', $address_data);
if($this->db->affected_rows() > 0)
{
// Code here after successful insert
return true; // to the controller
}
个人而言,我会避免使用
$this->db->affected_rows()
插入方法。 SQLServer不会返回插入值,所以从
获取返回值$this->db->insert(...)
会更可靠。我会保留affected_rows检查 “UPDATE” S :)
UPDATE:
同样的道理也适用于
$this->db->delete()
的affected_rows()函数不会在SQL Server上工作一个删除...
有一点要注意,我最近遇到的是,如果您使用$ this-> db-> affected_rows()进行UPDATE查询,它将返回一个零,如果查询成功但没有信息从已经存在的ro中改变了W上。 – 2013-11-21 07:09:18