Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: по поводу доступа инфы для зарегестрированных пользователей
 
 автор: equilibrium   (14.07.2009 в 21:16)   письмо автору
 
 

Здравствуйте!! помогите мне пожалуйта кто-нить:
я сделал простую регистрацию с занесением информации о пользователе в таблицу базы данных, могу прочитать или проверить данные, но как сделать чтобы когда человек авторизуется у него были дополнительные возможности в отличии от незарегестрированных пользователей. например чтобы только зарегестрированный пользователь мог зайти на определённую страницу!

  Ответить  
 
 автор: Trianon   (14.07.2009 в 21:36)   письмо автору
 
   для: equilibrium   (14.07.2009 в 21:16)
 

на определенной странице придется проверить, зарегистрирован пользователь, или нет.

  Ответить  
 
 автор: tvv123456   (14.07.2009 в 23:45)   письмо автору
 
   для: equilibrium   (14.07.2009 в 21:16)
 

http://softtime.ru/forum/read.php?id_forum=1&id_theme=66461 посмотрите там автор: tvv123456 (10.07.2009 в 16:11)
Вроде все более менее понятно. Файл лок включаете в начало тех страниц которые надо "засекретить"
Для конкретного сайта вам помогут подобрать и установить скрипт здесь: http://www.phpsite.z4.ru

  Ответить  
 
 автор: psychomc   (15.07.2009 в 10:07)   письмо автору
 
   для: tvv123456   (14.07.2009 в 23:45)
 

не проще ли проверить
<?php
if ($_SESSION["username"])
{
  
/* выводим защищенную инфу
    для авторизованного пользователя */
}
else
{
  
// отправляем не авторизованного на страницу с ошибкой
  
header ("Location: error.php");
}


?

  Ответить  
 
 автор: Trianon   (15.07.2009 в 10:19)   письмо автору
 
   для: psychomc   (15.07.2009 в 10:07)
 

А где здесь проверка аутентичности пользователя?
Что-то не замечаю :)
Какая-то переменная в сессии проверяется и всё.

  Ответить  
 
 автор: tvv123456   (15.07.2009 в 12:00)   письмо автору
 
   для: psychomc   (15.07.2009 в 10:07)
 

Полностью согласен с Trianon :)

  Ответить  
 
 автор: psychomc   (15.07.2009 в 14:27)   письмо автору
 
   для: tvv123456   (15.07.2009 в 12:00)
 

ну так при регистрации/авторизации добавлять в эту переменную какое-либо значение и потом на страницах проверять её. что не подходит?

  Ответить  
 
 автор: Trianon   (15.07.2009 в 14:33)   письмо автору
 
   для: psychomc   (15.07.2009 в 14:27)
 

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

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

Ну нельзя же совсем не думая, чисто по шаблону давать советы по поводу проверки регистрации!

  Ответить  
 
 автор: psychomc   (15.07.2009 в 15:01)   письмо автору
 
   для: Trianon   (15.07.2009 в 14:33)
 

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

  Ответить  
 
 автор: root   (15.07.2009 в 15:07)   письмо автору
 
   для: psychomc   (15.07.2009 в 15:01)
 

В Вашем варианте, при включеном выводе об ошибках, Вы получите notice и headers are already sent если пользователь не авторизирован.

P.S.
Это только по скрипту.

  Ответить  
 
 автор: psychomc   (15.07.2009 в 15:52)   письмо автору
 
   для: root   (15.07.2009 в 15:07)
 

notice вроде не так страшно. а headers лечится

ну или чтоб без них
<?php
if (empty($_SESSION["username"]))
{
  
// отправляем не авторизованного на страницу с ошибкой
  
header ("Location: error.php");
}


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

  Ответить  
 
 автор: tvv123456   (15.07.2009 в 22:48)   письмо автору
 
   для: psychomc   (15.07.2009 в 15:52)
 

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

Вроде дак была дана ссылка на полезную/похожую тему форума. Не понятно чем вы недовольны

  Ответить  
 
 автор: Trianon   (15.07.2009 в 23:39)   письмо автору
 
   для: psychomc   (15.07.2009 в 15:52)
 

Это похоже в мой адрес.

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

В формуме зарегистрировано более 10 тысяч посетителей. У каждого из них свои приоритеты.
Полагать, что все они будут ходить строем довольно наивно.

Вот у меня впечатление по массе своей совершенно противоположное.
В приоритете у среднего посетителя не помочь пользователю, а как можно быстрее получить от кого-нибудь какой-нибудь код, который работает, или делает вид, что работает.
Я, отвечая на чей-либо вопрос, никогда не ставил задачу, как можно быстрее кого-то удовлетворить.
Наоборот, пытался по возможности, как можно глубже посетителя с проблемой познакомить, чтобы тот видел её на поверхности, а от корней. И с корнями же и пытался справиться.

Вот вы пишете
notice не так страшно.
Мое же мнение: отключенные notice для меня - сущий кошмар.
Я перестаю видеть, где опечатался и не так назвал переменную, ключ массива и т.п., где наврал в логике, из-за чего , тот или иной элемент массива не был создан.
У меня, активно программирующего больше тридцати лет!
Что это тогда для новичка?
По моим наблюдениям 85 процентов ошибок в логике, которые сюда притаскивают,
как проблемы, с которыми не справиться, решались бы , если бы люди держали включенными нотайсы.

И?

  Ответить  
 
 автор: root   (15.07.2009 в 23:54)   письмо автору
 
   для: Trianon   (15.07.2009 в 23:39)
 

>У меня, активно программирующего больше тридцати лет!

o.O Тут без опечатки? :-) 30?

  Ответить  
 
 автор: Trianon   (16.07.2009 в 00:24)   письмо автору
 
   для: root   (15.07.2009 в 23:54)
 

без

  Ответить  
 
 автор: psychomc   (16.07.2009 в 10:08)   письмо автору
 
   для: Trianon   (15.07.2009 в 23:39)
 

В формуме зарегистрировано более 10 тысяч посетителей. У каждого из них свои приоритеты.
Полагать, что все они будут ходить строем довольно наивно.

Вот у меня впечатление по массе своей совершенно противоположное.
В приоритете у среднего посетителя не помочь пользователю, а как можно быстрее получить от кого-нибудь какой-нибудь код, который работает, или делает вид, что работает.
Я, отвечая на чей-либо вопрос, никогда не ставил задачу, как можно быстрее кого-то удовлетворить.
Наоборот, пытался по возможности, как можно глубже посетителя с проблемой познакомить, чтобы тот видел её на поверхности, а от корней. И с корнями же и пытался справиться.

Вот вы пишете
notice не так страшно.
Мое же мнение: отключенные notice для меня - сущий кошмар.
Я перестаю видеть, где опечатался и не так назвал переменную, ключ массива и т.п., где наврал в логике, из-за чего , тот или иной элемент массива не был создан.
У меня, активно программирующего больше тридцати лет! 


это всё конечно хорошо.
но блин...посмотрев форум не раз убеждался, что создатели тем хотят как можно быстрее получить решение...опять же, не всегда но почти всегда.
и ведь второй вариант что я написал не выдаст notice...
кстати, Trianon, если не секрет, сколько Вам лет?

  Ответить  
 
 автор: Trianon   (16.07.2009 в 11:31)   письмо автору
 
   для: psychomc   (16.07.2009 в 10:08)
 

>но блин...посмотрев форум не раз убеждался, что создатели тем хотят как можно быстрее получить решение...опять же, не всегда но почти всегда.

Так я ведь написал то же самое один в один!


>и ведь второй вариант что я написал не выдаст notice...

не выдает. Строго говоря (без session_start()) результат его предсказуем :)
Но дело опять же не в этом, а в том, что предложением применять такой код, Вы проблему аутентификации скидываете на механизм сессий.
Который по большому счету для этого не предназначен. И который в этом плане не без дыр. О чем Вы скромно умалчиваете.
Ну не подстава ли?

  Ответить  
 
 автор: psychomc   (16.07.2009 в 11:59)   письмо автору
 
   для: Trianon   (16.07.2009 в 11:31)
 

>>но блин...посмотрев форум не раз убеждался, что создатели тем хотят как можно быстрее получить решение...опять же, не всегда но почти всегда.
>
>Так я ведь написал то же самое один в один!
>
>
>>и ведь второй вариант что я написал не выдаст notice...
>
>не выдает. Строго говоря (без session_start()) результат его предсказуем :)
>Но дело опять же не в этом, а в том, что предложением применять такой код, Вы проблему аутентификации скидываете на механизм сессий.
>Который по большому счету для этого не предназначен. И который в этом плане не без дыр. О чем Вы скромно умалчиваете.
>Ну не подстава ли?

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

  Ответить  
 
 автор: Trianon   (16.07.2009 в 12:11)   письмо автору
 
   для: psychomc   (16.07.2009 в 11:59)
 

Вы полагаете, я об этом не писал здесь?

  Ответить  
 
 автор: psychomc   (16.07.2009 в 12:22)   письмо автору
 
   для: Trianon   (16.07.2009 в 12:11)
 

в теме-нет. приведите пожалуйста ссылки на темы, где Вы освещали этот вопрос

  Ответить  
 
 автор: Keyses   (16.07.2009 в 12:54)   письмо автору
 
   для: psychomc   (16.07.2009 в 12:22)
 

хм, может ТУТ? =))

  Ответить  
 
 автор: Trianon   (16.07.2009 в 12:59)   письмо автору
 
   для: Keyses   (16.07.2009 в 12:54)
 

А вот тут как раз приведен отличный пример, почему давать какие-то ссылки здесь особого смысла нет. :(

  Ответить  
 
 автор: Trianon   (16.07.2009 в 12:58)   письмо автору
 
   для: psychomc   (16.07.2009 в 12:22)
 

Грубый фильтр

  Ответить  
 
 автор: Рома   (16.07.2009 в 15:23)   письмо автору
 
   для: psychomc   (16.07.2009 в 11:59)
 

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




автор: Trianon (03.07.2007 в 19:45)

Схема регистрации и аутентификации, которая допускает логон по кукис, при котором ни в БД, ни в кукисах не хранятся пароли в открытом виде, в кукисах не хранится копия поля хеша пароля из БД, процедура регистрации и восстановления пароля требует подтверждения через e-mail, и не позволяет одновременно менять e-mail и пароль ...

  Ответить  
 
 автор: ride   (17.07.2009 в 00:14)   письмо автору
 
   для: Trianon   (15.07.2009 в 23:39)
 

вы начали программировать когда вам еще не было 13 лет?

  Ответить  
 
 автор: Trianon   (17.07.2009 в 00:38)   письмо автору
 
   для: ride   (17.07.2009 в 00:14)
 

именно так.
И давайте завяжем с этим вопросом. К теме обсуждения не относящимся никак.

  Ответить  
 
 автор: Trianon   (15.07.2009 в 15:11)   письмо автору
 
   для: psychomc   (15.07.2009 в 15:01)
 

понятно.
в кусты значит.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования