我正在尝试编写电子邮件验证,并确保字段留空,并在其中包含我想要的基本内容。
当我使用正确的内容对其进行测试时,它会触发,我无法找到原因。
实施例。以我的名义,我写“约翰”,它会触发错误信息。未通过测试。即使我已将输入限制为[A-Za-z0-9]。
这发生在我的所有领域。 电子邮件是一样的。 主题是一样的。 消息是一样的。
下面是我不应该触发的PHP代码。
if (!preg_match("/^[A-Za-z0-9]$/", $Name)){
$Error = 1;
$ErrorMessage .= "Name must be only Alphabetic or Numeric.<br />";
};
if (!preg_match("/^[A-Za-z0-9_.+-]+@[A-Za-z0-9._+-]+\.[A-Za-z0-9_.+-]{2,4}$/", $Email)){
if (!preg_match("/^[A-Za-z0-9_.+-]+@[A-Za-z0-9._+-]+\.[A-Za-z0-9_.+-]{2,4}+\.[A-Za-z0-9_.+-]{2,4}$/", $Email))
$Error = 1;
$ErrorMessage .= "Not an acceptable email address.<br />";
};
if (!preg_match("/^[A-Za-z0-9._+-]$/", $Subject)){
$Error = 1;
$ErrorMessage .= "Subject must be only Alphabetic or Numeric.<br />";
};
if (!preg_match("/^[A-Za-z0-9._+-]$/", $Message)){
$Error = 1;
$ErrorMessage .= "Message must be only Alphabetic or Numeric.<br />";
};
这是html
<form enctype="multipart/form-data name="ContactForm" action="Custom/Validation.php" method="post">
<label for="Name">Name</label>
<input type="text" id="Name" name="Name" />
<label for="Email">Email</label>
<input type="text" id="Email" name="Email" />
<label for="EmailSec">Confirm Email</label>
<input type="text" id="EmailSec" name="EmailSec" />
<label for="Subject">Subject</label>
<input type="text" id="Subject" name="Subject" />
<label for="Message">Message<label>
<textarea maxlength="500" id="Message" name="Message"></textarea>
<input type="submit" name="Sumbit" value="Send" />
</form>
非常感谢任何帮助或指导。