您好,我在数据库中插入跟踪号码时遇到问题。它似乎在某些情况下会生成重复的条目。我在first_track表的最后一个条目上生成跟踪编号,并将其增加1.现在我的问题是,当用户同时点击时。它会生成相同的追踪号码。我如何防止它?顺便说一句,这里是我的代码在生成跟踪号码。我每个月的第一次入场时也会返回0001。防止在codeigniter中使用php和mysql重复输入
<!----------Model-------->
$this->db->order_by("first_trackid", "desc");
$query = $this->db->get('first_track');
if($query->num_rows() > 0)
{
$result = $query->result();
if(date('m') != substr($result[0]->dtsno,2,2)){
$dtsno = date('ym').'0001';
}
else{
$dtsno = $result[0]->dtsno+1;
}
return $dtsno;
}
else
{
return $dtsno = date('ym').'0001';
}
<!--- END model------->
<!---controller----------->
//call the model for generating dtsno
$firsttrack->dtsno = $this->user_information_model->dtsno();
//insert to table first_entry
$this->user_information_model->first_track($firsttrack);
你想生成串行格式的轨道ID或任何随机没有? –
我想每月增加一次。例如2017年1月,第一个入口将是17010001,那么1月的下一个入口将是17010001 + 1。 17将是年份,01将是月份,那么接下来的4位数字将成为每月跟踪数量的计数 – PiDO
因此,当多个用户同时提交时,您是代码复制? –