验证插入codeigniter

时间:2015-12-26 13:55:36

标签: php mysql codeigniter activerecord mysqli

我试图在codeigniter中验证我的插入数据

问题是代码返回了重复条目的页面错误。我想把这个失败抛给主页,并显示错误消息。

这是我的代码:

$data = array(
            'heheId'   => $this->input->post('heheId'),
            'userId'  => $this->input->post('userId')
        );
    $this->db->insert('tentarasaya',$data);
    if ($this->db->affected_rows() > 0){
        $this->session->set_flashdata('info', "Hore sukses");
    } else {
        $this->session->set_flashdata('danger', "Fail insert");
    }
    redirect('my_home');

任何答案?

更新: 像这样重复输入

enter image description here

2 个答案:

答案 0 :(得分:1)

试试这个

$data = array(
    'heheId'   => $this->input->post('heheId'),
    'userId'  => $this->input->post('userId')
);  
if (!$this->db->insert('tentarasaya',$data)) { # add if here
    # Unsuccessful
    $this->session->set_flashdata('danger', "Fail insert");
}
else{
     # Success
    $this->session->set_flashdata('info', "Hore sukses");
}
redirect('my_home');

答案 1 :(得分:0)

确保在数据库中选择了自动增量选项。我假设这里的user_id是主键,不需要自己将其插入数据库。

newdat <- df %>% 
  group_by(fyear) %>% 
  filter(exchg == 11) %>% 
  mutate(LMH = cut(df$BEME, breaks = quantile(df$BEME & df$exchg, c(0,0.3,0.7,1)), labels = FALSE))

否则,如果您希望自己插入user_ids,您可以1)定义自定义回调函数以检查数据库中是否已存在指定的用户ID,2)使用与codeigniter捆绑的is_unique表单验证规则< / p>