Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: не работает авторизация

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Студеньт
Отправлено: 19 Ноября, 2015 - 09:51:18
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Нояб. 2015  


Помог: 0 раз(а)




CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php
  3.        if (($PHP_AUTH_USER!="x")||($PHP_AUTH_PW!= "x"))
  4.        {
  5.        header('WWW-Authenticate: Basic realm="Administrative resource"');
  6.        header ('HTTP/1.0 401 Unauthorized');  
  7.        exit();
  8.        }
  9. ?>
  10.  
  11. <!DOCTYPE HTML><html><body>
  12.  
  13. текст документа
  14.  
  15. </body></html>
  16.  



поясните пжста что же я не понял в теме авторизации

Файл index.html
Сервер настроен на обработку скриптов пхп в файлах хтмл

логика такая -
запрашивается логин и пароль
и если они равны х и х тогда клиент получает html документ

Однако при вводе х и х браузер всеравно продолжает спрашивать логин и пароль

(Отредактировано автором: 19 Ноября, 2015 - 09:59:46)

 
 Top
andrewkard
Отправлено: 19 Ноября, 2015 - 10:17:08
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Студеньт
Повторите данный пример - http://habrahabr[dot]ru/post/13726/
Статья основы дает, как нужно. Дальше сами.
 
 Top
Студеньт
Отправлено: 19 Ноября, 2015 - 10:25:24
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Нояб. 2015  


Помог: 0 раз(а)




andrewkard пишет:
Студеньт
Повторите данный пример - http://habrahabr[dot]ru/post/13726/
Статья основы дает, как нужно. Дальше сами.


По ссылке слишком много ненужного мне

Мне бы понять почему не работает мой простейший код
 
 Top
andrewkard
Отправлено: 19 Ноября, 2015 - 10:31:10
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Студеньт пишет:
слишком много ненужного мне

Там как раз самое основное, покажите Ваш код полностью.
 
 Top
Студеньт
Отправлено: 19 Ноября, 2015 - 10:34:56
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Нояб. 2015  


Помог: 0 раз(а)




andrewkard пишет:
Студеньт пишет:
слишком много ненужного мне

Там как раз самое основное, покажите Ваш код полностью.


Код полностью я показал
И логику описал
 
 Top
andrewkard
Отправлено: 19 Ноября, 2015 - 10:49:13
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




А, сразу не понял.
У Вас переменные не правильные:
PHP:
скопировать код в буфер обмена
  1.  
  2. if (!isset($_SERVER['PHP_AUTH_USER'])) {
  3.     header('WWW-Authenticate: Basic realm="My Realm"');
  4.     header('HTTP/1.0 401 Unauthorized');
  5.     echo 'Текст, отправляемый в том случае,
  6.    если пользователь нажал кнопку Cancel';
  7.     exit;
  8. } else {
  9.     echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
  10.     echo "<p>Вы ввели пароль {$_SERVER['PHP_AUTH_PW']}.</p>";
  11. }
  12.  

Возьмите 2 пример:
http://php.net/manual/ru/features.http-auth.php
 
 Top
Студеньт
Отправлено: 19 Ноября, 2015 - 11:20:10
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Нояб. 2015  


Помог: 0 раз(а)




спасибо - заработало как надо



CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php
  3.        if ($_SERVER['PHP_AUTH_USER'] != "z" || $_SERVER['PHP_AUTH_PW'] != "z")
  4.                 {
  5.                 header('WWW-Authenticate: Basic realm="WWW-Authenticate"');
  6.                 header ('HTTP/1.0 401 Unauthorized');
  7.                 exit();
  8.                 }
  9. ?>
  10.  
  11. <!DOCTYPE HTML><head>
  12. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  13. </head><html><body>
  14. текст документа
  15. </body></html>
  16.  
- это же есть простейший способ защитить страницу от посторонних?
или еще что то надо?
(в ситуации когда надо просто элементарно защитить страницу от чужих лиц)

Не понимаю почему во всех учебниках нет такого простого куска кода
Зачем проверять заполненость переменной если можно сразу проверить ее значение?!

(Отредактировано автором: 19 Ноября, 2015 - 11:57:59)

 
 Top
andrewkard
Отправлено: 19 Ноября, 2015 - 12:29:28
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Простейший, но не надежный.
Студеньт пишет:
Зачем проверять заполненость переменной если можно сразу проверить ее значение?!

Если переменная не объявлена перед проверкой, будет ошибка Notice: Undefined variable:
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB