【发布时间】:2023-04-10 07:44:01
【问题描述】:
这是我的代码:
我从来没有为电话号码字段设置验证,我尝试"/^([0-9]{3})-[0-9]{3}-[0-9]{4}$/"这种类型的代码进行验证,
我在电话号码字段中输入文本,他们在后端接受
我能做什么?用于设置电话号码字段的验证。
<!DOCTYPE HTML>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>
<?php
$nameErr = $phoneErr = "";
$name = $phone = "";
$error = 0;
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// collect value of input field
$name = htmlspecialchars($_REQUEST['name']);
$phone = htmlspecialchars($_REQUEST['phone']);
if (empty($name)) {
$nameErr = "* Name is required";
$error = 1;
// echo "Name is empty";
}
if (empty($phone)) {
// echo "phone is empty";
$phoneErr = "* Phone is required";
$error = 1;
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<h1>Login Form</h1>
Name: <input type="text" name="name" onkeydown="return alphaOnly(event);" value="<?php echo $name ?>">
<span class="error"> <?php echo $nameErr?></span>
<br></br>
Phone: <input type="text" name="phone" value="<?php echo $phone ?>">
<span class="error"> <?php echo $phoneErr?></span>
<br><br>
<input type="submit">
<br><br>
</form>
</body>
</html>
我需要在 PHP 中验证电话号码,但该示例不起作用。 如何设置手机号码验证
【问题讨论】:
-
想一想两次....你“真的”需要验证电话号码吗?
-
验证电话号码的唯一方法是打电话给他们并验证他们是否有效(已连接并属于提交他们的用户)。
-
它与验证电子邮件完全相同。每个人都只是检查电子邮件是否具有有效的格式,没有人检查它是否真的存在。我不明白你的意思。
-
关键是电话号码只是数字列表,它们没有特定的机器可执行格式。 “有效”电话号码取决于上下文,您是否可以通过从世界特定网络和位置的电话中键入这些数字来联系有效用户。电子邮件地址遵循特定格式,如果不使用,则会使其无效。就是这样。
-
@B001 验证与验证不同,但您可以根据格式验证电子邮件地址,但不一定对电话号码进行验证。例如,+1-555-5324、0015555324 在美国境内拨打电话时代表完全相同的用户,但如果您不是从美国拨打电话,5555324 可能不代表。
标签: php jquery html validation