За последние 24 часа нас посетил 20401 программист и 1084 робота. Сейчас ищут 798 программистов ...

Как реализовать покупку/продажу между пользователями?

Тема в разделе "PHP и базы данных", создана пользователем Apofeoz666, 12 окт 2019.

Метки:
  1. Apofeoz666

    Apofeoz666 Новичок

    С нами с:
    12 окт 2019
    Сообщения:
    1
    Симпатии:
    0
    Привет, форумчане!
    Подкиньте примеров (в каком вообще направлении рыть), как лучше реализовать продажи между пользователями.
    Например в БД есть товар - current
    Пользователь #1 может купить у Пользователь #2,
    Пользователь #3 может купить у Пользователь #1
    и в таком роде.. (интересует процесс запросов к БД)
    Никак не могу найти пример кода.
     
  2. Roman __construct

    Roman __construct Активный пользователь

    С нами с:
    27 апр 2019
    Сообщения:
    1.270
    Симпатии:
    112
    Дам наводку)))

    1. Делаешь ОДНУ таблицу в которую пишешь записи о каждой сделке:

    - количество переданного товара
    - id продавца
    - id покупателя
    - время транзакции

    Всё. Этого достаточно)))

    Баланс и пр. подсчитываешь уже исходя из данных этой таблицы (может ребята подскажут конкретные запросы)

    Кстати, именно так работает блокчейн :)
     
    Apofeoz666 нравится это.
  3. runcore

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    не слушайте бред товарища выше.
    одной таблицей такое конечно не реализовать.

    для начала, нужно самому себе ответить на несколько вопросов.
    1) Что именно будут покупать пользователи? товары, услуги. неважно. те таблица номер 1. ТОВАРЫ. артикул, описание... цена за единицу, либо цена в следующей таблице.
    2) У каждого пользователя свой список товаров. возможно со своей ценой. Таблица связей ТОВАРЫ ПОЛЬЗОВАТЕЛЕЙ. связь многие ко многим.
    3) Чем пользователи будут расплачиваться? Виртуальные деньги (пополняемые из реальных или иначе, неважно). Т.е. у каждого пользователя будет свой собственный счет, там же текущий баланс счета. можно хранить в отдельной таблице. можно упростить и хранить в данных самого юзера.
    4) Факт продажи/покупки. те транзакция. Отдельная таблица. с информацией. когда, кто, кому, что, в каком количестве, по какой стоимости. это будет история.
    5) важно. покупка/продажа - атомарная операция. но содержит внутри себя обновление сразу нескольких таблиц. поэтому придется использовать ТРАНЗАКЦИИ на уровне БД, содержащие все эти операции (проверка баланса ДО операции, добавление транзакции, синхронизация баланса на счете).

    для начала хватит. как определитесь с этим, и утвердите набор необходимых таблиц и их структуры, можно будет переходить к самим запросам. а пока нет даже понимания с таблицами, запросы писать просто невозможно...
     
    Apofeoz666 нравится это.
  4. Roman __construct

    Roman __construct Активный пользователь

    С нами с:
    27 апр 2019
    Сообщения:
    1.270
    Симпатии:
    112
    еще один шибко умный выискался :)

    ***

    ТС, "не слушайте бред товарища выше" (с) -))

    Для одного товара current вполне достаточно ОДНОЙ таблицы с транзакциями, в том виде, как я описал ее выше.

    //насчет "не слушайте бред товарища выше" - я разумеется пошутил)) там есть и здравые моменты, но перейти к ним стоит лишь ПОСЛЕ того, как разберетесь с основным принципом. на этом форуме много хороших разработчиков, но очень мало толковых преподавателей. всё как в жизни :)
     
    Apofeoz666 нравится это.
  5. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.817
    Симпатии:
    735
    Адрес:
    Татарстан
    Тс, готовых запросов никто тебе не даст. Неизвестна структура бд. Тебе бы с логикой разобраться.
     
  6. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.068
    Симпатии:
    1.231
    Адрес:
    там-сям
    На раз-два тут не получится. Тут и фин. транзакции , и контроль доступа (скорее всего ролевой), и управление ТМЦ. Обширная тема и больших денег стоит :)
     
    Roman __construct нравится это.
  7. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    Roman __construct нравится это.