我检查了一下,看看究竟是什么affected_rows返回。它应该返回> 0,如果有东西被删除,如果没有东西是0,是正确的?Affected_rows总是在删除时返回false
但是,当我删除产品时,它将被删除,因为它通过产品ID存在。但是,当我想测试通过试图做到这一点在我的模型是否有问题的产品已被删除:
function delete_product($id)
{
$tables = array('products', 'attributes');
$this->db->where('p_id', $id);
$this->db->delete($tables);
if ($this->db->affected_rows() > 0)
{
return TRUE;
}
else
{
return FALSE;
}
}
和值等返回到我的控制器:
public function delete()
{
$id = $this->uri->segment(3);
$this->a_model->delete_product($id);
if($res == FALSE)
{
$this->session->set_flashdata('success_delete', 'Product deleted successfully.');
redirect('admin/index');
}
else
{
$this->session->set_flashdata('error_delete', 'Product not deleted. We gots an issue.');
redirect('admin/index');
}
}
返回值总是错误的,即0。但是,当我检查我的数据库,看看产品是否被删除,它会被删除。有人能指出我做错了什么吗?
成交会是一个更好的方式做删除? – a7omiton 2013-03-11 19:26:51
我使用交易进行测试......它的一切都很好。 – a7omiton 2013-03-11 19:31:35