Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подкиньте примерчик кода MVC, На http://www.google.com/codesearch 
:(
    Опции темы
S.A.P.
Дата 4.12.2010, 21:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: 3
Всего: 71



Цитата(nIkTo @ 4.12.2010,  13:41)
Создаю такую структуру:
/login
/logout
/page1
/page2
/page3

для того чтобы смотреть page1, page2, page3 необходима авторизация.
Так вот вопрос где проверять прошёл ли пользователь аутентификацию ?

то есть заходит пользователь на /page2 роутер вызывает контроллер page2 с дефолтным действием index, а вот где проверить надо ли вызывать котроллер или делать редирект на /login ....

в общем как говорится лучше один раз увидеть чем ...

Зависит от того, к чему тебе нужно ограничить доступ. К конкретному адресу или контроллеру который к нему прикручен, а может исходя из каких - то внутренних правил, специфичных для контроллера. В первом случае пользователя можно обломать на этапе роутинга, в остальных - проверку можно производить и в контроллере. 
Ежели ты ломаешь голову над тем как хранить и обрабатывать структуру прав - покопай в сторону ACL
PM MAIL   Вверх
SamDark
Дата 5.12.2010, 02:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


Профиль
Группа: Участник
Сообщений: 1424
Регистрация: 25.7.2006
Где: Voronezh

Репутация: 10
Всего: 38



Или RBAC.


--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
nIkTo
Дата 5.12.2010, 11:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 218
Регистрация: 5.7.2007

Репутация: нет
Всего: нет



Нужна просто аутентификация ни каких ролей или разграничения прав среди аутентифицированных нету.
PM   Вверх
Muerto
Дата 5.12.2010, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Ну можно так сделать:

Код

$rights=array('secure','private','comment');

if(in_array(current_page,$rights) && !isset($_SESSION['auth'])){
//do some redirecting....
}else{
      //call controller
}



Ну а дальше немного воображения и экспериментирования...

Это ты в свой раутер запихать можешь...

За святое брать не стоит ибо на скорую руку накидал  smile 


--------------------
user posted image
PM MAIL   Вверх
bars80080
Дата 7.12.2010, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



Цитата(ksnk @  4.12.2010,  15:38 Найти цитируемый пост)
стартовать сессию нужно всегда

не всегда, а только когда есть кука или параметр с именем session_name()

почему только когда есть кука или параметр с именем session_name()?
я вот смотрю, параметр с именем session_name() есть всегда
PM MAIL WWW   Вверх
ksnk
Дата 7.12.2010, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата(bars80080 @  7.12.2010,  17:40 Найти цитируемый пост)
почему только когда есть кука или параметр с именем session_name()?
я вот смотрю, параметр с именем session_name() есть всегда 


Код

if(isset($_GET[session_name()]) or isset($_COOKIE[session_name()])) {
   start_session();
}

что-то вроде такого...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0811 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.