Лучшее руководство по PHP Forms - проверка сообщения и URL в 2024 году. В этом руководстве вы можете изучить PHP - проверить имя,PHP - проверка сообщений,PHP - проверить URL,PHP - проверить имя, адрес электронной почты и URL,
В этом разделе описывается, как проверять имена (наименование), адрес электронной почты (спама) и URL-адресов.
Следующий код будет простой способ определить, содержит ли имя поля буквы и пробелы, если значение имени поля не является законным, будет выдавать сообщение об ошибке:
$name = test_input($_POST["name"]); if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "只允许字母和空格"; }
preg_match - Выполняет проверку на соответствие регулярному выражению. Синтаксис: INT preg_match (строка $ шаблон, строка $ вопросу [, массив $ матчей [, INT $ флаги]]) Подвергаясь строка поиска шаблон, который соответствует регулярному выражению данного содержания. Если через матчи, то результаты поиска будут заполнены. $ Матчи [0] будет содержать текст всего шаблона соответствует, $ матчей [1] будет содержать первые захваченные подмаски Найденный текст, и так далее. |
Следующий код будет простой способ обнаружения электронной почты является действительным. Если адрес электронной почты не является действительным, будет выводить сообщение об ошибке:
$email = test_input($_POST["email"]); if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "非法邮箱格式"; }
Следующий код определит URL является законным (после регулярной операции выражение URL содержит тире: "-"), если адрес URL не является действительным, будет выводить сообщение об ошибке:
$website = test_input($_POST["website"]); if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) { $websiteErr = "非法的 URL 的地址"; }
Код выглядит следующим образом:
<?php // 定义变量并默认设置为空值 $nameErr = $emailErr = $genderErr = $websiteErr = ""; $name = $email = $gender = $comment = $website = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($_POST["name"])) { $nameErr = "Name is required"; } else { $name = test_input($_POST["name"]); // 检测名字是否只包含字母跟空格 if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $nameErr = "只允许字母和空格"; } } if (empty($_POST["email"])) { $emailErr = "Email is required"; } else { $email = test_input($_POST["email"]); // 检测邮箱是否合法 if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) { $emailErr = "非法邮箱格式"; } } if (empty($_POST["website"])) { $website = ""; } else { $website = test_input($_POST["website"]); // 检测 URL 地址是否合法 if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) { $websiteErr = "非法的 URL 的地址"; } } if (empty($_POST["comment"])) { $comment = ""; } else { $comment = test_input($_POST["comment"]); } if (empty($_POST["gender"])) { $genderErr = "性别是必需的"; } else { $gender = test_input($_POST["gender"]); } } ?>