Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 08.05.2013
Сообщений: 83
1

Как сделать зачисление денег на баланс пользователя?

05.06.2014, 15:54. Показов 3267. Ответов 5
Метки нет (Все метки)

Всем привет!) Мне уже помогли добрые люди и сделали счетчик "кликов". То есть, пользователь кликнул по кнопке скачать и на его баланс зачислились деньги, например 15 рублей.

Вот этот счетчик -
index.php
PHP/HTML
1
2
3
4
Всего: <?php session_start(); echo (isset($_SESSION['amount']) ? $_SESSION['amount'] : 0); ?>
<hr />
<button onclick="location.href='add.php?amount=15'">добавить 15</button>
<button onclick="location.href='add.php?amount=50'">добавить 50</button>
add.php
PHP/HTML
1
2
3
4
5
6
7
8
9
<?php
if (isset($_GET['amount']) && ctype_digit($_GET['amount'])) {
    session_start();
    $_SESSION['amount'] += (int) $_GET['amount'];
} else {
    die('Нужно передать значение');
}
Header('Location: index.php');
?>
http://pastebin.com/X6We7CDG. Но мне надо, чтобы у каждого зарегистрированного пользователя на сайте, этот счетчик был свой. То есть, человек уже скачал, на его баланс зачислились деньги, он вышел с сайта, потом зашел, а баланс как был, например, 15 рублей, так и остался. А человек, который первый раз на сайте, только зарегистрировался, имел баланс равный нулю. Короче говоря, надо в базу данных добавить поле balance для каждого пользователя и как-то привязать этот счетчик. Как сделать, помогите, пожалуйста?

Скриншот из базы данных:

При клике увеличивается это поле:
update users set balance=balace+15 where id=user_id

Вывод:
select balance from users where id=user_id
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2014, 15:54
Ответы с готовыми решениями:

Как сделать баланс пользователя на сайте ?
Как сделать баланс пользователя на сайте ? Примерное содержание таблицы &quot;users&quot; (точнее содержимое...

Как сделать уникальный личный кабинет, авторизацию и баланс для каждого пользователя?
как сделать личный кабинет, авторизацию и баланс для каждого пользователя уникальный

Как организовать денежный баланс пользователя?
Всем привет. Стоит у меня щас такая задача перед собой, т.к. сайтик я делаю себе, надо как то...

Баланс пользователя
Как мне сделать пополнение баланса пользователя? Данные о балансе хранятся в БД. Можно ссылку на...

__________________

Записывайтесь на профессиональные курсы Fullstack-разработчиков на PHP‌
5
0 / 0 / 0
Регистрация: 08.05.2013
Сообщений: 83
05.06.2014, 16:06  [ТС] 2
Приложил скриншот БД
0
Миниатюры
Как сделать зачисление денег на баланс пользователя?  
366 / 404 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
05.06.2014, 16:18 3
Лучший ответ Сообщение было отмечено Александр141 как решение

Решение

Ну а как ты хранишь ID пользователя? Tсть у тебя в сессии или в куках, ID текущего пользователя?
1
0 / 0 / 0
Регистрация: 08.05.2013
Сообщений: 83
05.06.2014, 16:29  [ТС] 4
На странице пользователя:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php include_once('include/config.php');?>
<?php include_once('include/function.php');?>
<?php
  if (!$_SESSION['id']) {
?>
<?php include_once('tmp/index.tpl');
}else{
      $id = $_SESSION['id'];
      $select = mysql_query("SELECT * FROM users WHERE id_user='$id'");
      $row = mysql_fetch_assoc($select);
      include_once('tmp/reg_index.tpl');
       if($_POST['del']){delete_acc($_SESSION['id']);
           ?>
               <script>alert('Аккакунт успешно удален');
               document.location.href="exit.php";
               </script>
           <?php
           exit;
       } else{ echo "";}
 
 
 
}
?>
На странице авторизации:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php include_once('include/config.php');?>
<?php include_once('include/function.php');?>
 
<?php
if($_SESSION['id']){
    echo '<script>window.location.href = "index.php";</script>';    exit;
}else{
  include_once('tmp/auth.tpl');
 
}
 
?>
Добавлено через 9 минут
Все. Проблема решена.
0
366 / 404 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
05.06.2014, 16:38 5
Лучший ответ Сообщение было отмечено Александр141 как решение

Решение

Если ID хранится в сессии $_SESSION['id']
тогда вот как то так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if (isset($_GET['amount']) && ctype_digit($_GET['amount'])) {
    session_start();
    $_SESSION['amount'] += (int) $_GET['amount'];
    
    if($_SESSION['id'])
    {
        $id = $_SESSION['id'];
        $query = "UPDATE `users` SET `balance`=(`balace`+15) WHERE user_id=$id";
        $res = mysql_query($query) or die(mysql_error());
    }
} else {
    die('Нужно передать значение');
}
Header('Location: index.php');
1
0 / 0 / 0
Регистрация: 08.05.2013
Сообщений: 83
05.06.2014, 16:42  [ТС] 6
Спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.06.2014, 16:42

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Баланс пользователя
Всем привет! Ребят не пе подскажите как реализовать баланс для зарегистрированного пользователя и...

Личный баланс пользователя
Всем привет. Подскажите, существует ли какое нибудь дополнение/компонент, что бы у пользователя был...

Как сделать систему передачи денег ?
Помогите пожалуйсто, хочу сайт сделать со своей системой выплат, тоесть чтоб человек мог класть...

Округление денег. Как сделать верно?
Собственно есть система которая перегоняет деньги из 1 валюты в другую но в итоге получается такая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.