Привет всем!
Может кто-то подсказать как реализовать систему регистрации по инвайтам? Я представляю примерно так:
Подскажите, пожалуйста, как реализовать?
Создание регистрации и подтверждения e-mail'a я реализовать смогу, в вот всё, что связано с инвайтами...
В таблице инвайтов можно хранить ещё id юзера, который получил инвайт, и id юзера, который по нему зарегистрировался.
Я прокоментирую:
В базе генерируются рандомные 5000 инвайтов.
зачем ? просто генерируйте инвайт когда нужно, если глобальное кол-во ограничено, храните счетчик или делайте count().
Пользователи при регистрации вводят логин, пароль,e-mail и инвайт.
Таблица с приглашениями должна выглядеть примерно так:
id varchar (64) primary,issuer_id int,email varchar(255) unique, issued_date, used shorint default 0;
когда человек приходит по ссылке c id, вы делаете следующее - проверяете поле used у соответствующего приглашения (select from invites where id=':id' and used=0), спрашиваете подтверждение TOS, пароль, имя/ник, заводите пользователя и выставляете used в 1.
Можно ещё для злостных троллей аннулировать их приглашения, удалять старые приглашения и пр.
Ах да - проверить сколько пользователь может выписать приглашений можно так-же выборкой из базы.
реализация всего этого очень похожа на реализацию подтверждения емайла, если какие-то конкретные вопросы, попробуйте написать код и покажите те части, которые вызывают затруднения.
Введите 2 столбца у пользователя, т.е. 2 пустых слота, к примеру записывать туда id приглашенных. А инвайт можешь сделать какой нить закодированный ID приглашающего (не хэш, чтобы можно было понять кто кодировал), или хэш ID приглашающего (тогда его надо будет заносить в базу). Приглашенный вводит заветный инвайт, если слот у приглашающего свободен, записываем туда ID нового пользователя (Если в базе пользователей <5000, иначе естественно не давать зарегестрироваться). p.s. Данные извращения я привел только ради поставленной цели, т.е. поставленные цели я считаю дикими :)
Ввод инвайта, дрожащими от волнения руками, затаив дыхание - это ведь целый ритуал :D
какая-то секта по вводу инвайта. Складывается впечатление, что вся цель сайта - ввод инвайта )))
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости