diff --git a/comission.php b/comission.php index 05f6980..13005a8 100644 --- a/comission.php +++ b/comission.php @@ -18,8 +18,10 @@ if ($user['battle'] != 0) { $get = urldecode(filter_input(INPUT_SERVER, 'QUERY_STRING')); -$itemCost = filter_var($_GET['kredit'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]); -$itemId = filter_var($_GET['n'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]); +$itemCost = filter_input(INPUT_GET, $_GET['kredit'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]); +$itemId = filter_input(INPUT_GET, $_GET['n'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]); +$returningItemId = filter_input(INPUT_GET, $_GET['back'], FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]); + if ($get == 'sale' && $itemCost && $itemId) { $commission = ceil($itemCost / 10); # 10% от суммы с округлением вверх. if ($user['money'] > $commission) { @@ -27,7 +29,7 @@ if ($get == 'sale' && $itemCost && $itemId) { if (db::c()->getAffectedRows()) { $deloText = "{$user['login']} выставил товар: «{$dress['name']}» id:({$itemId}) [{$dress['duration']}/{$dress['maxdur']}] на продажу в комиссионку за {$itemCost} кр. "; addToDelo($deloText); - db::c()->query('UPDATE `inventory` SET `setsale` = ?i WHERE `id` = ?i AND `owner` = ?i', $itemCost, $itemId, $_SESSION['uid']); + db::c()->query('UPDATE `inventory` SET `setsale` = ?i WHERE `id` = ?i', $itemCost, $itemId); db::c()->query('UPDATE `users` SET `money` = `money` - ?i WHERE `id` = ?i', $commission, $_SESSION['uid']); $status = "Вы сдали в магазин «{$dress['name']}» за {$itemCost} кр. Вычтено за услуги магазина: {$commission} кр."; } else $status = "Предмет не найден в инвентаре!"; @@ -39,27 +41,14 @@ if ($get == 'unsale') { return 1; } -if ($_GET['back']) { - if ($user['money'] >= 1) { - if (is_numeric($_GET['back']) && $_GET['back'] > 0) { - $dress = mysql_fetch_array(mysql_query("SELECT * FROM `inventory` WHERE `dressed`=0 AND `id` = '{$_GET['back']}' AND `owner` = '{$_SESSION['uid']}' AND `setsale` > '0' LIMIT 1;")); - if ($dress['id']) { - mysql_query("UPDATE `users` set `money` = `money`-'1' WHERE id = {$_SESSION['uid']}"); - mysql_query("UPDATE `inventory` SET `setsale` = '0' WHERE `id` = '{$_GET['back']}' AND `owner` = '{$_SESSION['uid']}' LIMIT 1;"); - mysql_query("INSERT INTO `delo` (`id` , `author` ,`pers`, `text`, `type`, `date`) VALUES ('','0','{$_SESSION['uid']}','\"" . $user['login'] . "\" забрал предмет: \"" . $dress['name'] . "\" id:(cap" . $dress['id'] . ") [" . $dress['duration'] . "/" . $dress['maxdur'] . "] из комиссионки ',1,'" . time() . "');"); - mysql_query("INSERT INTO `delo` (`id` , `author` ,`pers`, `text`, `type`, `date`) VALUES ('','0','{$_SESSION['uid']}','\"" . $user['login'] . "\" заплатил 1 кр за хранение предмета: \"" . $dress['name'] . "\" id:(cap" . $dress['id'] . ") [" . $dress['duration'] . "/" . $dress['maxdur'] . "] в комиссионке ',1,'" . time() . "');"); - $user['money'] = $user['money'] - 1; - - echo "Вы забрали из магазина \"" . $dress['name'] . "\" за 1 кр."; - } else { - echo "Произошла ошибка. Вещь не найдена в магазине!"; - } - } else { - echo "Не надо так делать"; - } - } else { - echo "У вас недостаточно денег на уплату комиссии."; - } +if ($returningItemId) { + $dress = db::c()->query('SELECT `name`,`duration`,`maxdur` FROM `inventory` WHERE `dressed` = 0 AND `setsale` > 0 AND `id` = ?i AND `owner` = ?i', $returningItemId, $_SESSION['uid'])->fetch_assoc(); + if (db::c()->getAffectedRows()) { + $deloText = "{$user['login']} забрал свой товар: «{$dress['name']}» id:({$returningItemId}) [{$dress['duration']}/{$dress['maxdur']}] из комиссионки."; + addToDelo($deloText); + db::c()->query('UPDATE `inventory` SET `setsale` = 0 WHERE `id` = ?i', $returningItemId); + $status = "Вы забрали из магазина ваш «{$dress['name']}»."; + } else $status = "Предмет не найден на полках магазина!"; }