【问题标题】:php character match and allow special charactersphp字符匹配并允许特殊字符
【发布时间】:2013-07-20 19:35:36
【问题描述】:

我正在尝试制作一个将使用registration, login actions网站

我正在我的 localhost 中尝试它。 在这个阶段,我只为用户和登录操作创建了数据库。

问题是我在数据库中设置了我的用户名“viral4ever”。登录操作正常,但我可以使用“viral4ever”、“VIRAL4EVER”等登录。我不希望它出现在我的系统中。我想检查我的数据库中的每个字符 以登录,如果它与“viral4ever”匹配,那么它应该让我进入,而不是使用 Viral4ever 或 viral4ever 或 VIRAL4EVER 等等。

我还想允许用户在他们的用户名中使用 ".", "_","-"。所以请帮我解决这个问题。

我正在使用 MySQL 数据库并登录并检查我正在使用此功能的用户...

function user_exists($username){
    $username = sanitize($username);
    return (mysql_result(mysql_query("SELECT `user_id` FROM `users` WHERE `username` = '$username'"), 0) == 1) ? true : false;
}


function sanitize($data) {
    return mysql_real_escape_string($data);
}

【问题讨论】:

  • 请贴出实现认证的代码,否则你的请求没有意义

标签: php database login web


【解决方案1】:

当你创建一个新的 mysql 表时,你可以在不同的字符集之间进行选择。许多人的名字中有“_ci”,意思是“不区分大小写”。

看来您需要选择一个区分大小写的。

【讨论】:

  • 它对我有很大帮助,而且工作顺利。我将用户名更改为 UTF8_bin。使用起来完美吗?现在我需要允许 .和 - 和 _ 在用户名中。我已经创建了一个用户名 virus.joshi,但我无法使用这个用户名登录。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-09-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多