我正在运行一个codeigniter应用程序,我无法让这个简单的插件运行良好 .
if(!$this->db->insert('myTable',$entry)){
$p3 = 0;
}else{
echo $this->db->last_query();
var_dump($this->db->_error_message());
}
“else”子句中的调试总是向我显示错误消息的空字符串,如果我在phpmyadmin中测试last_query,则插入工作正常 .
但是,当我正常运行应用程序时,插入不会发生,即使启动了“其他”,也意味着请求成功 .
任何线索?
更新:$ entry数组的例子:
$entry = array(
'id' => '',
'id_devis' => $current[0]->id,
'metier' => $_POST[$i+1 . '_create_metier'],
'days' => $_POST[$i+1 . '_create_daycount'],
'price' => $_POST[$i+1 . '_create_price'],
'cr_date' => date('Y-m-d H:i:s'),
'user' => ''
);
$ current是另一个表的提取(使用$ this-> db-> get),并且所有数据都很好,因为我可以通过last_query()的echo插入它们
2 回答
放
在插入线之前 . 您应该看到一条错误消息 .
我的猜测是你试图为id插入一个非法值 . 可能的原因: - 它不应该是空的 . - 它不能是一个字符串(即,如果类型是整数)
大多数情况下,数据库中的id是int类型,是一个自动增量字段 . 如果是这样,您不应该尝试插入ID . 它将为您创建 .
刚发现问题,没有 . 一个脚本正在删除我刚刚在代码中插入的行,插入成功 . 谢谢你的回答