您的位置:首页技术文章
文章详情页

使用PHP和MySQL的UNIQUE如何像京东注册那样保证用户名唯一?

【字号: 日期:2022-06-10 18:16:42浏览:15作者:猪猪

问题描述

我认为这么快的判断用户名重复是通过设置用户名字段UNIQUE,然后写入捕获异常来实现的。但我尝试了一下,发现实际操作起来并没有那么简单,如果要求用户名唯一就去写表看异常,如果重复了可以返回false,但成功的话写入的数据是不完整的,我们真正需要的是将用户提交的注册信息一起写表,我想了一下,这个操作只能通过事务来实现了,通过事务只要不commit,就不会真正的写表,但我们已经得知了表中的这条数据是否冲突,不知我的理解对不对。或者是通过其他的方式来实现的。通过select查询判断对于大量数据来说不合适吧?

问题解答

回答1:

一般不是前端输入完后ajax会去做查询的么?提交的时候插库前再查一遍,做个unique保险一点。

回答2:

根据用户输入的名字到数据库查一下就ok了,有结果就提示已占用,没有结果才能用,如果录入其他信息期间被人先行提交占用再提示被占用就ok了,提示话术斟酌一下即可,这样的概率很低并且也可以接受

回答3:

到数据库查吧

标签: 京东
相关文章: