ввод-вывод средств

This commit is contained in:
lopar 2018-03-09 23:12:03 +02:00
parent 722f8514c7
commit a67bd9b375
2 changed files with 69 additions and 63 deletions

130
bank.php
View File

@ -11,12 +11,15 @@ if ($user['battle'] != 0) {
}
$cost_login = 25;
$mywarn = '';
######## ОБЩИЕ ЗАПРОСЫ В БАЗУ ###
$bank = db::c()->query('SELECT `id`, `cr`, `ekr` FROM `bank` WHERE `id` = ?i', $_SESSION['uid'])->fetch_assoc();
#################################
/**
* Если вдруг нет счёта, создаём.
*/
if (!$bank['id']) {
db::c()->query('INSERT INTO `bank` (`id`) VALUES (?i)', $_SESSION['uid']);
}
@ -36,25 +39,29 @@ if (!$bank['id']) {
</script>
<script src="/js/jquery-1.7.2.min.js"></script>
<style>
legend {
padding: 0.2em 0.5em;
color: #666;
font-weight: bold;
}
.appblock {
background: silver;
border-radius: 2px;
float: left;
height: 200px;
margin: 10px;
max-width: 250px;
width: 250px;
opacity: 0.75;
padding: 5px;
}
div.appblock form {
margin: 0;
margin: 5px;
}
div.appblock span {
padding: 0.2em 0.5em;
color: #666;
font-weight: bold;
display: block;
}
div.appblock br {
margin:5px;
}
</style>
</head>
@ -100,39 +107,35 @@ if (!$_SESSION['bankid']) {
die();
}
if ($_POST['in'] && $_POST['ik']) {
$_POST['ik'] = round($_POST['ik'], 2);
if (is_numeric($_POST['ik']) && ($_POST['ik'] > 0) && ($_POST['ik'] <= $user['money'])) {
$user['money'] -= $_POST['ik'];
if (mysql_query("UPDATE `users` SET `money`=`money`-'" . $_POST['ik'] . "' WHERE `id`=" . $user['id'] . " LIMIT 1;")) {
$mywarn = "Деньги удачно положены на счет";
mysql_query("UPDATE `bank` SET `cr`=`cr`+'" . $_POST['ik'] . "' WHERE `id`=" . $_SESSION['bankid'] . " LIMIT 1;");
mysql_query("INSERT INTO `delo`(`id`,`author`,`pers`,`text`,`type`,`date`) VALUES ('','0','" . $_SESSION['uid'] . "','Персонаж " . $user['login'] . " положил на свой счет №" . $_SESSION['bankid'] . " " . $_POST['ik'] . " кр. ',1,'" . time() . "');");
} else {
$mywarn = "Произошла ошибка!";
}
$summa = filter_input(INPUT_POST, 'summa', FILTER_VALIDATE_INT);
if (isset($_POST['money-in']) && $summa) {
if ($summa > 0 && ($summa <= $user['money'])) {
$user['money'] -= $summa;
db::c()->query('UPDATE `users` SET `money` = `money` - ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('UPDATE `bank` SET `cr` = `cr` + ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('INSERT INTO `bank_logs` (`user_id`, `sum`, `type`, `comments`, `source`)
VALUES (?i, ?i, "?s", "?s", ?i)', $bank['id'], $summa, 'money-in', 'Банк: Зачисление средств на счёт', $bank['id']);
} else {
$mywarn = "У вас недостаточно денег для выполнения операции";
}
$_POST['in'] = 0;
$_POST['money-in'] = NULL;
$summa = 0;
}
if ($_POST['out'] && $_POST['ok']) {
$_POST['ok'] = round($_POST['ok'], 2);
if (is_numeric($_POST['ok']) && ($_POST['ok'] > 0) && ($_POST['ok'] <= $bank['cr'])) {
$user['money'] += $_POST['ok'];
if (mysql_query("UPDATE `users` SET `money`=`money`+'" . $_POST['ok'] . "' WHERE `id`='" . $user['id'] . "' LIMIT 1;")) {
$mywarn = "Деньги удачно сняты со счета";
mysql_query("UPDATE `bank` SET `cr`=`cr`-'" . $_POST['ok'] . "' WHERE `id`='" . $_SESSION['bankid'] . "' LIMIT 1;");
$bank = mysql_fetch_array(mysql_query("SELECT * FROM `bank` WHERE `id`='" . $_SESSION['bankid'] . "';"));
mysql_query("INSERT INTO `delo` (`id`,`author`,`pers`,`text`,`type`,`date`) VALUES ('','0','" . $_SESSION['uid'] . "','Персонаж " . $user['login'] . " снял со своего счета №" . $_SESSION['bankid'] . " " . $_POST['ok'] . " кр.',1,'" . time() . "');");
} else {
$mywarn = "Произошла ошибка!";
}
if ($_POST['money-out'] && $summa) {
if ($summa > 0 && ($summa <= $bank['cr'])) {
$user['money'] += $summa;
db::c()->query('UPDATE `bank` SET `cr` = `cr` - ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('UPDATE `users` SET `money` = `money` + ?i WHERE `id` = ?i', $summa, $bank['id']);
db::c()->query('INSERT INTO `bank_logs` (`user_id`, `sum`, `type`, `comments`, `source`)
VALUES (?i, ?i, "?s", "?s", ?i)', $bank['id'], $summa, 'money-out', 'Банк: Вывод средств на руки', $bank['id']);
} else {
$mywarn = "У вас недостаточно денег на счету для выполнения операции";
}
$_POST['out'] = 0;
$_POST['money-out'] = NULL;
$summa = 0;
}
if ($_POST['change'] && $_POST['ok']) {
@ -411,39 +414,42 @@ if (!$_SESSION['bankid']) {
err($mywarn);
?>
<a href="?exit=1"> выйти из счёта</a>
<h1>ет <b><?=$bank['id']?></h1>
<br><br>
<table class='adm'>
<tr>
<th></th>
<th>Кредитов.</th>
<th>ЕвроКредитов.</th>
</tr>
<tr>
<td><?=$bank['id']?></td>
<td><?=$bank['cr']?></td>
<td><?=$bank['ekr']?></td>
</tr>
</table><br>
<div class="appblock">
<legend>Денежные средства</legend>
Кредитов на руках: <b><?= $user['money'] ?></b> кр.<br>
Кредитов на счету: <b><?= $bank['cr'] ?></b> кр.<br>
Еврокредитов на счету: <b><?= $bank['ekr'] ?></b> екр.<br>
<table width=100%>
<tr>
<td width="75"><input type=text size=10 name=ik placeholder="Сумма"></td>
<td><input type=submit name=in value="Положить кредиты на счёт"></td>
</tr>
<tr>
<td><input type=text size=10 name=ok placeholder="Сумма"></td>
<td><input type=submit name=out value="Снять кредиты со счёта"></td>
</tr>
</table>
<span>Денежные средства</span>
Кредитов на руках: <b><?=$user['money']?></b> кр.<br>
<form method="post">
<input size="10" name="summa" placeholder="Сумма">
<input type="submit" name="money-in" value="Вложить">
</form>
<form method="post">
<input size="10" name="summa" placeholder="Сумма">
<input type="submit" name="money-out" value="Вложить">
</form>
</div>
<div class="appblock">
<legend>Перевод кредитов</legend>
<form method="POST">
<table width=100%>
<tr>
<td width="75"><input type=text size=10 name=sum placeholder="Сумма"></td>
</tr>
<tr>
<td><input type=text size=10 name=number placeholder="Cчёт получателя"></td>
</tr>
</table>
<input type=submit name=wu value="Перевести кредиты">
<div class="appblock" style="background:#FFAAAA;">
<span>Перевод кредитов</span>
<form method="post">
<input size="10" name="summa" placeholder="Сумма">
<input size="10" name="to-id" placeholder="Cчёт получателя"><br>
<input type="submit" name="send-money" value="Перевести кредиты">
</form>
Комиссия составит 3% от переводимой суммы, но не менее 1 кр.
<i>Комиссия составит 3% от переводимой суммы, но не менее 1 кр.</i>
</div>
<? if (!empty($user['admin'])): ?>

View File

@ -23,7 +23,7 @@ if ($hreject) {
VALUES ("?s", "?s", "?s", "?s", "?s", "?s")', $login, $password, $email, $birthday, $ip, session_id());
$nid = db::c()->getLastInsertId();
db::c()->query('INSERT INTO `online` (`id`, `date`, `room`) VALUES (?i, ?i, ?i)', $nid, time(), 1);
db::c()->query('INSERT INTO `bank` (`id`, `cr`) VALUES (?i, ?i)', $nid, 5);
db::c()->query('INSERT INTO `bank` (`id`) VALUES (?i)', $nid, 5);
//db::c()->query('UPDATE `users` SET `sid` = "?s" WHERE `id` = ?i', session_id(), $nid);
setcookie(GAMEDOMAIN, $nid, time() + 3600);
setcookie("battle", time());