Loading...
Всем ку, ребят. Кароч такая проблема. Пишу животных(монетные и за реал). Все написал почти, но в конце маленькая ошибка с ценой. ОН считает цену по первому животному. Например, 1 животное стоит 5000, продажа его будет стоить 2500, Второе животное стоит 3000, продажа его стоит 1500, следобвательно если продавать оптом. должно дать 4000, а дает 5000. Я пишу так,

$barek_sell_cen=mysql_result(mysql_query("SELECT COUNT(*) FROM `petground` WHERE `id_user` = '$user[id]' AND (`id_pet` > '0' AND `cena` > '0') "),0);

$petground_sell_c=mysql_fetch_assoc(mysql_query("SELECT * FROM `petground` WHERE `id_user` = '$user[id]' AND `cena` > '0' "));
$pet_sell_c=mysql_fetch_assoc(mysql_query("SELECT * FROM `pet` WHERE `id` = '$petground_sell_c[id_pet]'"));

mysql_query("UPDATE `user` SET `money` = '".($user['money']+($pet_sell_c['cena']*$barek_sell_cen/2))."' WHERE `id` = '$user[id]'");
RUS (28.01.2016 в 13:46)
Всем ку, ребят. Кароч такая проблема. Пишу животных(монетные и за реал). Все написал почти, но в конце маленькая ошибка с ценой. ОН считает цену по первому животному. Например, 1 животное стоит 5000, продажа его будет стоить 2500, Второе животное стоит 3000, продажа его стоит 1500, следобвательно если продавать оптом. должно дать 4000, а дает 5000. Я пишу так,

$barek_sell_cen=mysql_result(mysql_query("SELECT COUNT(*) FROM `petground` WHERE `id_user` = '$user[id]' AND (`id_pet` > '0' AND `cena` > '0') "),0);

$petground_sell_c=mysql_fetch_assoc(mysql_query("SELECT * FROM `petground` WHERE `id_user` = '$user[id]' AND `cena` > '0' "));
$pet_sell_c=mysql_fetch_assoc(mysql_query("SELECT * FROM `pet` WHERE `id` = '$petground_sell_c[id_pet]'"));

mysql_query("UPDATE `user` SET `money` = '".($user['money']+($pet_sell_c['cena']*$barek_sell_cen/2))."' WHERE `id` = '$user[id]'");



я сильно не вникал, но может порядок действий (умножение-деление) даёт такую ошибку и что-то в скобки записать?
RUS , ну так цену то одного берешь, по нему и считаешь
Вилы_Выкидные , если все животные 1 типа, тогда все норм считает.
А если 1 за 5000 монет, второй за 3000 и 3й за 1000, значит если оптом продать, должно дать 4500, а дает 7500. Я так понял, он сумму вычитывает из первой цены животного. Надо посчитать всю сумму. Я так понял, то циклом сумму считать?
Вилы_Выкидные , Значит цену отдельно в цикле посчитать над?
RUS (28.01.2016 в 13:54)
Вилы_Выкидные , Значит цену отдельно в цикле посчитать над?


да циклом крутить смену айди животных и считать им цены с просчётом общей суммы
ты не пишешь, ты какуляешь там.
89828013 , пох :D то что я пишу, называется "Хороший" код для кх. Так помоги лучше а не оффтопь. *heh*
RUS , я теряюсь в твоем коде :D кинь на гист
Можно сделать с помощью цикла, чтобы не делать его "нагрузочным" используешь GROUP по животным, тем самым цикл может выполнится максимум до количества всех животных, а не до 100 всех загонов.
В цикле вытаскиваешь количество разных видов животных и умножаешь на их стоимость.
Онлайн: 4
Время:
Gen. 0.1123
(c) Bym.Guru 2010-2026