Php codeigniter显示(我的)sql插入警告
我有这个控制器和型号:Php codeigniter显示(我的)sql插入警告,php,mysql,sql,codeigniter,Php,Mysql,Sql,Codeigniter,我有这个控制器和型号: class MyModel extends CI_Model { public function __construct() { parent::__construct(); } public function insert($data_array) { $this->db->insert('table', $data_array); if($this->db->affected_rows() == 1
class MyModel extends CI_Model
{
public function __construct()
{
parent::__construct();
}
public function insert($data_array)
{
$this->db->insert('table', $data_array);
if($this->db->affected_rows() == 1) {
return true;
}
return false;
}
}
class Panel extends CI_Controller
{
public function submitPrimer()
{
// evaluate data
$this->load->library('form_validation');
$this->load->model('MyModel', 'mymodel');
// validate, set_rules....
$data = array(
'column1' => $value1;
// .....
);
if($this->mymodel->insert($data)) {
echo "inserted";
}
}
}
CI中是否存在任何类型的$this->db->show_warnings()。在mysql控制台中,有一个“show warnings”命令,该命令表示,例如,如果您有datatype:float,并且像这样插入:insert-into-table(attribute_float)值(“”)。正确的方法是插入表(属性_float)值(NULL)
我还想知道“插入”是否应该用于模型。我一直认为只有“选择/获取”数据会被删除。据我所知,从《用户指南》来看,我认为Codeigniter没有这样的功能,对于这样的验证,使用form\u验证库是相当不错的
至于插入/编辑/删除,他们通常会转到模型,但这取决于您。谢谢。是的,第一个解决方案是尽可能多地准备数据。我认为有一条“规则”说“你永远不能相信用户的输入”。对于show_警告,我应该使用:mysql_查询(“show warnings”);链接