产品页面项目验证 PHP
Product page item validation PHP
我有一个产品页面,用户可以在其中 select 从包含 5 个不同项目的列表中选择 X 数量的项目。
在提交信息之前,他们的购物车中必须至少有一件商品。
这是 HTML 中项目 1 的示例:
<div class="quantityField" id="item1">
<input id="qty1" name="qty1" class="qty" value="" type="text" placeholder="0" autofocus="autofocus" />
<button type="button" id="addMac">Add</button>
</div>
而我试图做到这一点的 PHP 看起来像这样:
}elseif (!filter_var($qty1, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}elseif (!filter_var($qty2, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}elseif (!filter_var($qty3, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}elseif (!filter_var($qty4, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}elseif (!filter_var($qty5, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}
现在用户输入需要验证为 int,允许 0,但购物车中必须有一件商品。
根据现在的编码方式,要求购物车中的每件商品至少有 1 件,这显然不是某人实际 selects。
我如何调整它以强制用户 select 在进入发票页面之前至少有 1 件商品,但没有最大值?
<form action="" method="POST">
<label for="ptoduct1">Product1:</label>
<input type="number" id="fname" name="pro1"><br><br>
<label for="ptoduct1">Product2:</label>
<input type="number" id="fname" name="pro2"><br><br>
<label for="ptoduct1">Product3:</label>
<input type="number" id="fname" name="pro3"><br><br>
<label for="ptoduct1">Product4:</label>
<input type="number" id="fname" name="pro4"><br><br>
<label for="ptoduct1">Product5:</label>
<input type="number" id="fname" name="pro5"><br><br>
<input type="submit" value="Submit" name="submit" >
</form>
<?php
if(isset($_POST['submit'])){
$product1=$_POST['pro1'];
$product2=$_POST['pro2'];
$product3=$_POST['pro3'];
$product4=$_POST['pro4'];
$product5=$_POST['pro5'];
echo $product1,' ' ,$product2,' ',$product3,' ',$product4,'
',$product4;
}
?>
<?php
if(isset($_POST['submit'])){
if($product1>0 or $product2>0 or $product3 >0 or $product4 >0 or
$product5 >0){
echo 'run';
}
}
?>
我有一个产品页面,用户可以在其中 select 从包含 5 个不同项目的列表中选择 X 数量的项目。
在提交信息之前,他们的购物车中必须至少有一件商品。
这是 HTML 中项目 1 的示例:
<div class="quantityField" id="item1">
<input id="qty1" name="qty1" class="qty" value="" type="text" placeholder="0" autofocus="autofocus" />
<button type="button" id="addMac">Add</button>
</div>
而我试图做到这一点的 PHP 看起来像这样:
}elseif (!filter_var($qty1, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}elseif (!filter_var($qty2, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}elseif (!filter_var($qty3, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}elseif (!filter_var($qty4, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}elseif (!filter_var($qty5, FILTER_VALIDATE_INT){
exit("Error: You have no items in your cart.");
}
现在用户输入需要验证为 int,允许 0,但购物车中必须有一件商品。
根据现在的编码方式,要求购物车中的每件商品至少有 1 件,这显然不是某人实际 selects。
我如何调整它以强制用户 select 在进入发票页面之前至少有 1 件商品,但没有最大值?
<form action="" method="POST">
<label for="ptoduct1">Product1:</label>
<input type="number" id="fname" name="pro1"><br><br>
<label for="ptoduct1">Product2:</label>
<input type="number" id="fname" name="pro2"><br><br>
<label for="ptoduct1">Product3:</label>
<input type="number" id="fname" name="pro3"><br><br>
<label for="ptoduct1">Product4:</label>
<input type="number" id="fname" name="pro4"><br><br>
<label for="ptoduct1">Product5:</label>
<input type="number" id="fname" name="pro5"><br><br>
<input type="submit" value="Submit" name="submit" >
</form>
<?php
if(isset($_POST['submit'])){
$product1=$_POST['pro1'];
$product2=$_POST['pro2'];
$product3=$_POST['pro3'];
$product4=$_POST['pro4'];
$product5=$_POST['pro5'];
echo $product1,' ' ,$product2,' ',$product3,' ',$product4,'
',$product4;
}
?>
<?php
if(isset($_POST['submit'])){
if($product1>0 or $product2>0 or $product3 >0 or $product4 >0 or
$product5 >0){
echo 'run';
}
}
?>