如何阻止用户在输入 PHP 中只输入空格?

我正在创建一个社交网站,在注册代码中,某人只能在输入字段中输入空格。

我不希望他们在字段中输入除密码之外的任何空格。

我尝试了很多事情,,,empty还有trim一些htmlentities !trim我忘记了。他们都没有工作。其中一些人将名字的值设置为 1。

我缺少什么?

下面是我尝试过的事情的列表(不同时)。

$first_name = trim(strip_tags(filter_var($_POST['first_name'], FILTER_SANITIZE_STRING)));

str_replace('  ', ' ', $first_name);


if (empty($first_name)) {

    echo "Fill in first name to sign up";

}

if (!ctype_alnum($first_name)) {

    echo "Invalid first name, it only may contain letters or digits";

$first_name = $_POST['first_name'] ?? '';


if (empty($first_name)) {

    echo "Fill in first name to sign up";

}

if (!ctype_alnum($first_name)) {

    echo "Invalid first name, it only may contain letters or digits";

$first_name = htmlentities(trim(strip_tags(filter_var($_POST['first_name'], FILTER_SANITIZE_STRING)));


if (empty($first_name)) {

    echo "Fill in first name to sign up";

}

if (!ctype_alnum($first_name)) {

    echo "Invalid first name, it only may contain letters or digits";


撒科打诨
浏览 116回答 2
2回答

慕虎7371278

使用正则表达式。以下代码检查它是否至少为 5 个符号,并且仅包含字母和数字;$firstName = trim($_POST['first_name']);if (!preg_match("/^[a-zA-Z0-9]{5,}$/", $firstName)){  echo 'Invalid';}

ITMISS

嘿,我对你的问题有一个简单的解决方案,尝试一下如果您只想提交文本和空格,请使用此选项<input&nbsp;type="text"&nbsp;name="Name"&nbsp;required&nbsp;pattern="[a-zA-Z&nbsp;]+"&nbsp;>如果你想提交数字和空格而不是使用这个<input&nbsp;type="text"&nbsp;name="Name"&nbsp;required&nbsp;pattern="[0-9&nbsp;]+"&nbsp;>如果你想插入文本而不是空白,那么使用这个<input&nbsp;type="text"&nbsp;name="Name"&nbsp;required&nbsp;pattern="[a-zA-Z]+"&nbsp;>根据您的要求使用任何行无需额外行代码或条件简单安全
打开App,查看更多内容
随时随地看视频慕课网APP