if ($promo == 'NEWUSER'){
if($bd->Query("SELECT COUNT(*) FROM users_nykfageubf WHERE p = '$p' AND promo_new=1")){
$bd->Query("UPDATE users_nykfageubf SET promo_new = 0 WHERE p = '$p'");
$bd->Query("UPDATE users_nykfageubf SET balance=balance+10 WHERE p = '$p");
} else {
echo '<div class="alert-msg"><a href="#" class="close-alert"><i class="fa fa-times"></i></a><p>Вы уже использовали промокод.</p></div>';
}
}
Присутствует такой фрагмент кода. Реализуется использование промокода. По замыслу, у пользователя $p проверяется, использовал ли он промокод promo_new (1 - нет, 0 - да). Если нет, то баланс увеличивается на 10 и promo_new = 0; Проблема лишь в том, что в не зависимости от того, какое значение стоит в promo_new, пользователь неограниченное кол-во раз может использовать промокод и получить +10 на баланс. Не понимаю почему, ведь присутствует WHERE и всё чётко указано.