1.问题
(1)近在做一个网站的注册和登录,密码字段因为用MD5算法,大小写生成的密文是完全不一样的,存入数据库的是密文,没有发现这个问题
(2)用户名存入的取出时,发现这种问题。即:数据库存在Jerry而不存在jerry,但是这两个用户名都能被查询到:
1.解决方法
(1)在sql语句的要区分大小写字段名的前面(本例即name)加个binary即可:
(2)当字段值是中文时,这样写也没有影响,所以sql可以用同一句:
本文探讨了在网站注册与登录功能中遇到的问题,即使用MD5加密后的密码对大小写敏感,以及数据库中用户名区分大小写导致查询异常的情况。文中提供了解决方案,包括在SQL查询中使用BINARY关键字来确保大小写的正确匹配。
1548
869
768
1442
1671

被折叠的 条评论
为什么被折叠?