我有一个用户名文本框。它应该只接受 3 到 10 个字符,它应该只接受 (0, 9) 和 (A , Z) 值,或者可能是 (- 和 _),仅此而已
。
如果用户输入一个像 $%^# 这样的值,它应该会给出一个错误
,我想用 PHP 来做这个,而不是 Jquery。谁能帮我这个?
我知道我可以使用
<input name="1" type="text" value="1" maxlength="10" />
但它不会给用户一个错误,只是过滤输入值。
谢谢你。
我有一个用户名文本框。它应该只接受 3 到 10 个字符,它应该只接受 (0, 9) 和 (A , Z) 值,或者可能是 (- 和 _),仅此而已
。
如果用户输入一个像 $%^# 这样的值,它应该会给出一个错误
,我想用 PHP 来做这个,而不是 Jquery。谁能帮我这个?
我知道我可以使用
<input name="1" type="text" value="1" maxlength="10" />
但它不会给用户一个错误,只是过滤输入值。
谢谢你。
正则表达式可以工作
if (preg_match("%^[A-Za-z0-9-_]{3,10}$%", $_POST["1"])) {
// OK
} else {
// ERROR
}
$_REQUEST
当值提交到您的 PHP 脚本时,您可以通过全局变量查看它。在这种情况下,您将引用$_REQUEST["1"]
. 要确保它包含的值具有一定的大小,请使用该strlen()
函数。要确保该值仅包含某些字符,您可以使用preg_match_all()
适当的正则表达式,如下所示:
[A-Za-z0-9]