在提交注册信息的时候报错:SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'admin' for key 'username'

原因:主键冲突  违反完整性约束 字段唯一索引

 报错:SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'admin' for key 'username'

 

从上图可以看出,用户名和邮箱必须唯一,如果填入重复的用户名或者邮箱就会出错

解决方法:在控制器里面进行判断

$data = input('post.');
$uniquename = model('User')->get(['username'=>$data['username']]);
if(sizeof($uniquename)){
$this->error('该用户名已经注册,请重新填写~~~');
}
$uniqueemail = model('User')->get(['email'=>$data['email']]);
if(sizeof($uniqueemail)){
$this->error('该邮箱已经注册,请重新填写~~~');
}


添加上面代码之后,如果填写了重复的用户名或者密码就会给用户相关提示~~~

对了,上面的代码是在TP5上写的。

相关文章:

  • 2022-02-06
  • 2021-09-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-04-29
  • 2021-07-19
猜你喜欢
  • 2022-12-23
  • 2021-10-16
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-17
  • 2022-12-23
相关资源
相似解决方案