我确定解决方案相当简单,但是我的大脑今天似乎并没有处于正确的心态。我有一个 MySQL 表存储我的产品的定价矩阵。
ID PRODUCT MINIMUM PRICE
1 1 2 15
2 1 4 12
3 1 6 10
快速解释一下,对于 id 为 1 的产品,如果客户的购物篮中至少有 2 件商品,那么每件商品的价格将降至 15 英镑。如果用户随后将另外 2 件产品放入他们的购物篮中,则每件的价格将降至 12 英镑。
问题:我需要一种在每次添加新价格层时验证新价格层的方法。因此,如果有人想添加一个新层:
ID PRODUCT MINIMUM PRICE
4 1 3 16
这是不允许的,因为在这种情况下,如果用户选择购买三件而不是两件,每件商品的价格都会增加。因此,我需要确保输入的价格随着数据库中已有值的数量增加而减少。
$query = 'select id,minimum,price from `cat.tier_price` where product = %d order by minimum asc;';
$query = sprintf($query, (int)$identity);
if(!$return = $db->query($query)){
echo 'MySQL error!';
}else{
$quantity = $_POST['quantity'];
$price = $_POST['quantity'];
if($return->num_row){
while($tier = $return->fetch_object){
}
}
}
如果我说得不够清楚,请说。任何帮助将不胜感激。