【问题标题】:How to validate username in PHP [closed]如何在 PHP 中验证用户名 [关闭]
【发布时间】:2020-01-11 07:09:01
【问题描述】:

我想在 php 中验证用户名。我只想让用户只输入 ABC[英文字符]。我不想让用户输入[]{}()//,.<>*~``^

我有这个代码:

 if(preg_match('/^[0-9]{2,}$/', $_POST['username'])){
        $username_err = "<div class='alert alert-danger text-capitalize'>
                                    type alphanumaric in first name only</div>";

【问题讨论】:

  • 哪里出了问题?
  • 如果我在用户名字段中输入这些 []{}()//,.*~`^ 中的任何一个,则不得允许用户使用
  • @jawad altaf 你的正则表达式是错误的,这意味着用户名必须以 0 到 9 之间的数字开头,并且必须以 2 到 9 之间的数字结尾
  • @bahram 然后请告诉我正确的验证方式

标签: php regex


【解决方案1】:

这种情况你的正则表达式是错误的,只需添加这个正则表达式

if(preg_match('/^[a-zA-Z0-9]*$/', $_POST['username']))

如果你不想让数字太测试这个:

if(preg_match('/^[a-zA-Z]*$/', $_POST['username']))

【讨论】:

  • 请解释为什么 OPs 正则表达式不正确
  • @MarcinOrlowski 正则表达式意味着用户名必须以 0 到 9 之间的数字开头,并且必须以 2 到 9 之间的数字结尾,但他想制作一个只允许英文字符的正则表达式
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多