#php #coupon
#php #купон
Вопрос:
Сайт моей компании добавляет купоны с помощью этой функции updatecart (ниже), но нет способа удалить купон, не зайдя в серверную часть, чтобы удалить его. Я хочу добавить эту опцию, но я не уверен, с чего начать. Я надеюсь, что это может быть что-то простое, например, просто установить купон на «» или что-то в этом роде? И тогда я предполагаю, что мне придется перейти на html и добавить настоящую кнопку «очистить», но я верю, что смогу справиться с этой частью самостоятельно. Буду очень признателен за любые советы о том, как я мог бы получить ранее добавленный купон!
function updatecart ($remove, $quantity) {
global $DB_site, $dbprefix, $settings, $lang, $cart, $ae;
if (is_array($remove)) {
foreach ($remove as $k => $v) $cart->removeitem(intval($k));
}
if (is_array($quantity)) {
foreach ($quantity as $k => $v) {
$temp = explode(":", $k);
$errors = $cart->revalidateitem($temp['0'], $v, false);
if (!$errors) $cart->updatequantity($temp['0'], intval($v));
}
}
if (isset($_POST['coupon']) amp;amp; $_POST['coupon'] != "") {
$results = $DB_site->query_first("SELECT * FROM `".$dbprefix."coupons` d WHERE
d.`status`='1' AND (d.`used`<d.`max` OR d.`max`='0') AND
d.`vstart`<='".stamp()."' AND d.`vend`>='".stamp()."' AND
d.`omin`<='".p($cart->subtotal(), false)."' AND
(d.`omax`>='".p($cart->subtotal(), false)."' OR d.`omax`='".p(0, false)."') AND
d.`code`='".desql($_POST['coupon'])."'".restrict('d')
);
if ($results['id'] != "") {
$cart->coupon = $_POST['coupon'];
$ae->new_alert($lang['cart_view']['coupon'].$cart->coupon.$lang['cart_view']['coupadded']);
} else {
$ae->new_error($lang['cart_view']['coupon'].$_POST['coupon'].$lang['cart_view']['coupfailed']);
}
}
}