общедоступная зона для участников и обновленная премиум-зона на php

Мне удалось разработать форму аутентификации / активации PHP, которая отлично работает для того, что мне нужно, теперь я бы хотел добавить возможность разрешить этим участникам стать членами премиум-класса, заплатив комиссию, чтобы они могли получить полный доступ к содержимое веб-сайта (.. я знаю, это похоже на веб-сайт "ххх" ...; D).

Знаете ли вы какую-нибудь книгу или учебные пособия, в которых я могу найти и изучить базовый способ того, как это сделать?


person Gnu_nix    schedule 29.03.2012    source источник
comment
Это слишком общий вопрос, чтобы на него можно было ответить. Где именно у вас проблемы? Получение платежа? Ограничение доступа? Авторизоваться? Хранение учетных данных?   -  person JJJ    schedule 29.03.2012
comment
Привет, спасибо за ответ, я знаю, что это довольно широкий открытый вопрос, в основном мне интересно, как платежная компания будет взаимодействовать с моим веб-сайтом / БД после оплаты, чтобы побудить пользователя, скажем, из профиля гостя на премиум.   -  person Gnu_nix    schedule 29.03.2012


Ответы (2)


Вам нужна система доступа на основе ролей.

У вас может быть три типа пользователей, например гость, пользователь и премиум.

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

Это часто реализуется с использованием ACL, и у Zend Framework есть очень хороший такой список. http://framework.zend.com/manual/en/zend.acl.html

person Paul Bain    schedule 29.03.2012
comment
Спасибо, Пол, я посмотрю туда - person Gnu_nix; 29.03.2012

Я предпочитаю использовать zend_acl_module для идеального решения вашей проблемы. Благодаря этому вы также можете справиться с будущими требованиями. Обратитесь к этой ссылке для дальнейших шагов:

Практическая реализация Zend_ACL + Zend_Auth и лучшие практики

person Mohan Shanmugam    schedule 29.03.2012
comment
Спасибо, Мохан, я тоже посмотрю; D - person Gnu_nix; 29.03.2012