Как организовать реф-систему?

Ysn

Guest
Как организовать реф-систему?

Мне нужно как-то организовать реферальную систему. Основная проблема в том, что максимальное количество уровней - 9. Но сколько точно - неизвестно - это будет зависеть от настроек. Можно бы и файл каждому зарегистрировавшемуся создавать, но в mysql, наверное, будет быстрее... Впрочем, я не знаю точно.

Как это лучше сделать, а?
 

MuXa247

Новичок
Делаешь таблицу реферов, у каждого есть id и parent_id.
При переходе по ссылке рефера прописываешь пользователю куку с id рефера. В заказах пользователя прописываешь этот id. И сразу (или потом) пересчитываешь, т.е. идешь по дереву рефераллов вверх и делаешь начисления в зависимости от уровня и % ставки.
 

Ysn

Guest
Но мне надо выводить статистику каждому пользователю - сколько у него рефераллов... Не выгоднее ли каждому пользователю записывать его девять рефереров? Чтобы потом не бегать по всей таблице, и не считать, а сразу видеть в строке всю информацию?
 

MuXa247

Новичок
9 реферов или 9 уровней реферов?
А в одной строке точно не надо делать! ;)
 

Ysn

Guest
Нет... реф-система вся рассчитана на 9 уровней максимум. Но! Человек, который эти будет управлять - может сделать 2 уровня... или 5 уровней... кто его знает. Он - админ. Так вот, как он сделает - после этого все должно работать по его условиям.... И вот как?

p.s. А почему в одной не надо? По моей технологии получается:
user | preref1 | preref2 ..... И так далее, до preref9


Удобно и считывать, и записывать... Это медленно? Или есть лучше ход?
 

MuXa247

Новичок
Originally posted by Доктор
userID | refID | level
Зачем level? Реферал может быть кому то вторым левелом, кому то девятым... Все равно придется рекурсивно идти вверх по всем парентам...

p.s. А почему в одной не надо? По моей технологии получается:
user | preref1 | preref2 ..... И так далее, до preref9
Ты с файлами чтоль собрался делать? Это ты зря...
Если уж дожил до реф системы, то делай лучше уж с MySQL!
 

Доктор

Новичок
Если указан левел, то никуда _рекурсивно_ идти не надо...

Тьфу ты господи, не пояснил: само-собой это - таблица связности, а не основная с юзерами.
 
Сверху