За последние 24 часа нас посетил 17931 программист и 1654 робота. Сейчас ищут 1366 программистов ...

Как сделать вывод информации по реферальной программе

Тема в разделе "Решения, алгоритмы", создана пользователем iteru, 14 дек 2009.

  1. iteru

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

    С нами с:
    19 ноя 2009
    Сообщения:
    11
    Симпатии:
    0
    Сайт имеет реферальную программу в которой каждый пользователь может иметь 4 уровня рефералов.
    Данные всех пользователей записаны в таблице базы данных, причем строка каждого пользователя в вышеуказанной
    таблице имеет поле sponsor значение которого является логином спонсора, то есть человека привлекшего его для
    участия в реф. программе.
    Нужно вывести как общее количество рефералов на каждом уровне так и данные рефералов по каждому уровню отдельно.
    Посоветуйте как это можно реализовать в скрипте?
     
  2. iteru

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

    С нами с:
    19 ноя 2009
    Сообщения:
    11
    Симпатии:
    0
    И если с первым уровнем все ясно т.к. достаточно следующего запроса:

    [sql] SELECT login FROM table WHERE sponsor='логин спонсора';[/sql]

    затем можно посчитать как количество строк в запросе так и вывести логины первого уровня.
    То как быть во втором и последующих уровнях? Ведь результатом запроса по первому могут быть
    и несколько логинов.
     
  3. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    гуглить

    "Работа с деревьями в PHP" - Nested Sets, Adjacency List, Matherialized Path