mysql 设置phone字段为唯一 后 插如一条记录成功 再插入一条手机号一样的记录sql语句报错 而不是返回插入错误!怎么办
$User=M('User');
$result=$User->add($data);
if($result){
$da['code']='1';
$da['message']="注册成功";
$da['token']=$data['token'];
echo json_encode($da);
}else{
$da['code']='0';
$da['message']="手机已注册";
$da['token']="null";
echo json_encode($da);
}"
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
这个就没必要mysql 来处理啊,自己入库前,先查一遍,
注册前先判断是否存在改记录咯
这种需求应该在程序中处理。当然,如果设计在数据库了,应当抑止PHP操作MySQL所产生的错误(不提倡,这样做的话所有的MySQL错误都会被忽略),才会返回错误
这算数据库操作类抛出的异常!所以直接中断了。
你需要
INSERT ... ON DUPLICTE KEY UPDATE