Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
tigrov 27.07.2009 11:14
Допустим, продаем картошку<table> <tr> <td>Лот <td>Вид картошки <td>Продавец <td>Объем <td>Сумма <td>Цена <td>bay </tr> <form method="post" enctype="multipart/form-data"> ^rem{menu} ^Market.menu{ <tr> <td>$Market.id <td>$Market.vid <td>$User.id <td>$Market.amount <td>$Market.prise <td>^eval($Market.prise * $Market.amount) <td><input type="radio" name="whobay" value="$Market.id"/> </tr> } </table> <input type="submit" name="bay" value="Купить картошку"/> </form>Покупаем:
^if(def $form:bay){ $NowBay[$form:tables.whobay] ^rem{что покупаем} ^if($NowBay){ $NowBay[$NowBay.field] ^MAIN:dbconnect{ $Market[^table::sql{SELECT * FROM `market` WHERE `id` = '$NowBay}] } ^if($Market){ ^MAIN:dbconnect{ $UserMoney[^table::sql{SELECT `money`, `kartoha` FROM `user` WHERE `id_user` = '$User.id'}] $EnemyResurs[^table::sql{SELECT `money` FROM `user` WHERE `id_user` = '$Market.id_user'}] } $AllPrise[^eval($Market.prise * $Market.amount)] ^rem{получаем сумму} ^if($UserResurs.money >= $AllPrise){ ^rem{проверка хватает ли денег у покупающего} $SubMoney[^eval($UserMoney.money - $AllPrise)] $AddResurs[^eval($UserMoney.kartoha + $Market.amount)] $AddMoneyEnemy[^eval($EnemyResurs.money + $AllPrise)] ^MAIN:dbconnect{ ^rem{удаляем строку из рынка} ^void:sql{DELETE FROM `market` WHERE `id` = '$NowBay'} } ^if($User.id != $Market.id_user){ ^MAIN:dbconnect{ ^void:sql{UPDATE `user` SET `money` = '$AddMoneyEnemy' WHERE `id_user` = '$Market.id_user'} ^void:sql{UPDATE `user` SET `kartoha` = '$AddResurs', `money` = '$SubMoney' WHERE `id_user` = '$User.id'} } }{ ^rem{если покупаем сами у себя } ^MAIN:dbconnect{ ^void:sql{UPDATE `user` SET `kartoha` = '$AddResurs' WHERE `id_user` = '$User.id'} } } $response:location[/market/] }{У Вас не хватает денег <br> Необходимо $AllPrise} }{Кто-то Вас опередил с покупкой} }{Кота в мешке хотите купить? } }Вот так, а теперь вопрос, ктото еще в это же время захотел, купить картошку, вопрос как себя скрипт и база поведут в этом случае?