Php 如何在注册过程中检查用户是否输入字母数字

Php 如何在注册过程中检查用户是否输入字母数字,php,Php,我正在尝试建立一个登录系统,当检查用户是否输入了字母数字时,我被卡住了 我查阅了许多教程,其中说可以使用ctypealnum来实现这一点。但我无法做到这一点。 我的代码和问题如下 $rusername = mysqli_real_escape_string($connection, $_POST['rusername']); $rpassword = mysqli_real_escape_string($connection, $_POST['rpassword']); $crpassword

我正在尝试建立一个登录系统,当检查用户是否输入了字母数字时,我被卡住了

我查阅了许多教程,其中说可以使用ctypealnum来实现这一点。但我无法做到这一点。 我的代码和问题如下

$rusername = mysqli_real_escape_string($connection, $_POST['rusername']);
$rpassword = mysqli_real_escape_string($connection, $_POST['rpassword']); 
$crpassword = mysqli_real_escape_string($connection, $_POST['crpassword']);
if ($rpassword != $crpassword) {
    echo "The password's doesn't match";
}
我不知道如何创建一个代码来检查字母数字是否已经输入到必填字段中,如果是的话,他们应该得到通知,就像我们在许多流行网站上看到的那样


谢谢

您已经正确地使用了它,但不确定为什么它不适合您

其他评论对在表单级别验证或处理散列密码提出了很好的观点,但无论如何,只是为了回答您的问题,下面是它的外观:

$rusername = mysqli_real_escape_string($connection, $_POST['rusername']);
$rpassword = mysqli_real_escape_string($connection, $_POST['rpassword']); 
$crpassword = mysqli_real_escape_string($connection, $_POST['crpassword']);

if ($rpassword != $crpassword) {
    echo "The password's doesn't match";
} elseif (!ctype_alnum($rpassword)) {
    echo "Please use alphanumeric password!";
}

你能不能编辑我的代码,因为那样我会抓到更多。希望您不介意是否将此应用于用户密码。不要。应该允许用户的密码是用户希望输入的任何内容。由于您将使用
password\u hash
来存储它,因此不必担心sql注入(在这方面,您也应该使用预先准备好的语句)do@karen所有验证都必须在服务器端进行,因为用户输入不可信。您仍然可以添加客户端验证,但不能完全依赖它。@RaashidDinDar不知道您所指的“热门公司”也有糟糕的密码限制,禁止输入真正安全的密码。也许你应该找“合适的公司”来代替。好吧,他们有自己的理由。密码的更好做法是允许使用所有ascii字符(而不仅仅是A-Z 0-9)。一些更现代的网站允许使用完整的utf8字符集作为密码。这里的要点是,您正在创建一个密码散列来存储和验证密码。密码为
©72*±:lWijf^™hFe&^Tbh2ƒ
在使用您应该使用的
password\u hash()/password\u verify()
时是完全可以接受的。