首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >匹配该单词的任何组合。

匹配该单词的任何组合。
EN

Stack Overflow用户
提问于 2014-05-12 14:03:36
回答 3查看 93关注 0票数 1

我有登录/注册系统在我的网站上,但我不知道如何匹配用户名。

如果我有一个名为"Vlajko“的用户,并且只有当他输入名称"Vlajko”而不能输入"vlajko“或任何其他组合时,他才能登录,那么我如何防止注册一个名为"vlajKO”的新用户,因为它与数据库中的记录"Vlajko“不匹配,同时通过我在php中的检查,因为该列是大小写敏感的?

因此,我有用户Vlajko,一个新用户正在开始注册并尝试使用名称vlajKO (或vlajko)注册。PHP通过数据库检查mysqli是否有名为vlajKO的记录,但是它找不到它,因为它不存在,而且Vlajko存在,而且用户能够使用确切的名称登录,因此该列区分大小写,因此系统将允许用户使用该名称注册,我不想这样做。

这有点让人困惑,但我希望你能理解。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-05-12 14:07:03

选择小写,

代码语言:javascript
复制
SELECT COUNT(*) FROM mytable WHERE LOWER(mytable.login) = LOWER('vlajKO');

如果它返回!=从0,那么已经有一个人的这个名字,非个案感觉

票数 3
EN

Stack Overflow用户

发布于 2014-05-12 14:06:19

将数据库中的列'name‘(或您曾经使用过的名称)更改为主键,这样就不可能保存两个具有相同值的条目(不是区分大小写的)。

票数 0
EN

Stack Overflow用户

发布于 2014-05-12 14:09:25

在注册过程中检查现有用户名时,使用条件:WHERE lower(username) = lower(?s)修改mysql查询,其中?s注册用户名。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23611168

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档