| Новости | 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}
}{Кто-то Вас опередил с покупкой}
}{Кота в мешке хотите купить? }
}Вот так, а теперь вопрос, ктото еще в это же время захотел, купить картошку, вопрос как себя скрипт и база поведут в этом случае?