我已经编写了手机号码验证脚本,正如您在下面看到的那样。问题是它在URL1上运行良好。但在URL2上运行不好。我想知道为什么?
URL1-http://axbc.com/con/s2.php
URL2-http://axbc.com/con/s2.php?key=d908e8401774411861043
这是我的代码
if(isset($_POST['btn-signup']))
{
$mobilenumber = $_POST['mobilenumber'];
if(!empty($dialogmobilenumber)) // phone number is not empty
{
if(preg_match('/^947'd{8}$/',$mobilenumber)) // phone number is valid
{
echo 'success';
}
else // phone number is not valid
{
echo "<script>alert('Mobile Number is Not valid.. Format should be ');
</script>";
}
}
}
您的代码在两个url中都运行良好。它在做什么,它的意义是什么,它匹配从"947"开始的所有11位数字+8个。
因为,在这段代码中,您没有在任何地方使用传递的变量,所以它永远不会是导致错误的原因。
有一件事,您在$mobilenumber
变量中接收手机号码作为POST。那么,为什么要使用$dialogmobilenumber
来检查它是否为空呢?你在程序中的任何地方定义过这个吗。
if(!empty($dialogmobilenumber)) // phone number is not empty
{ ...
还有一件事,你的表格也出现在s2.php
中吗?如果没有,您的操作包含表单的(action="?")
是什么?
注意:如果您可以粘贴完整的代码和输出URL2,那就好了。