所以我想验证地址表单字段和P.O.框表单字段。到目前为止,我有这样的:嵌套PHP如果循环
if (empty($_POST["po"]) && empty($_POST["address"]))
{
$poErr = "Please enter a P.O. Number OR address";
$addressErr = "Please enter a P.O. Number OR address";
if (!preg_match("/[0-9]{1,}$/",$po))
{
$po = test_input($_POST["po"]);
$poErr = "Please enter only a number for P.O. Box.";
}
if (!preg_match("([0-9]{1,} [\s\S]*?)",$address))
{
$address = test_input($_POST["address"]);
$addressErr = "Address must be only letters, numbers or one of the following _ - . , : ' \"";
}
}
test_input
只是检查特殊字符。
我想要做的是看P.O.框和地址是空的,如果是的话,那么我会告诉它显示一个错误到html中,为一个字段或另一个字段输入一个值,结果很好。之后我想要做的是确定哪一个被填充,然后验证其中一个和/或两个字段,如果其中一个或两个都恰好被填充。
这是我的HTML我想要的“PO”和“地址”值保持如果有是窗体上的另一个错误:
<div class="form-group">
<label class="control-label" for="address">Your Mailing Address **</label>
<input class="form-control" type="text" name="address" id="address" placeholder="Your Mailing Address" value="<?php echo $address; ?>">
<br /><span class="error"><?php echo $addressErr; ?></span>
</div><!--form group address-->
<div class="form-group">
<label class="control-label" for="po">Your P.O. Box (Number only) **</label>
<input class="form-control" type="text" name="po" id="po" placeholder="#" value="<?php echo $po; ?>">
<br /><span class="error"><?php echo $poErr; ?></span>
</div><!--form group address-->
你能否提一下你所面临的错误。请确保在'$ po'和'$ address'中获得正确的值。 – Roopendra
要清楚,唯一的错误是当表单字段未填写。我没有通过这段代码获得我想要的结果。我只是无法适当地嵌套if,以确定是否填充了一个或两个字段并验证填充的字段。 当我测试,以确保两个领域都是空的,这是正确的代码的唯一部分。 –