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
Форумы портала PHP.SU :: Версия для печати :: Не работает скрипт
Форумы портала PHP.SU » » Вопросы новичков » Не работает скрипт

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

1. saber135791 - 31 Октября, 2011 - 17:45:32 - перейти к сообщению
Здравствуйте, проблема такая: не работает скрипт проверки логина и пароля для доступа к админ панели, на денвере все отлично работает, а вот на реальном хостинге нет! Подскажите в чем ошибка?
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. include("db.php");
  3. if (!isset($_SERVER['PHP_AUTH_USER']))
  4.  
  5. {
  6.        Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
  7.        Header ("HTTP/1.0 401 Unauthorized");
  8.        exit();
  9. }
  10.  
  11. else {
  12.        if (!get_magic_quotes_gpc()) {
  13.                $_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);
  14.                $_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']);
  15.        }
  16.  
  17.        $query = "SELECT pass FROM userlist WHERE user='".$_SERVER['PHP_AUTH_USER']."'";
  18.        $lst = @mysql_query($query);
  19.  
  20.        if (!$lst)
  21.        {
  22.            Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
  23.        Header ("HTTP/1.0 401 Unauthorized");
  24.        exit();
  25.        }
  26.  
  27.        if (mysql_num_rows($lst) == 0)
  28.        {
  29.           Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
  30.           Header ("HTTP/1.0 401 Unauthorized");
  31.           exit();
  32.        }
  33.  
  34.        $pass =  @mysql_fetch_array($lst);
  35.        if ($_SERVER['PHP_AUTH_PW']!= $pass['pass'])
  36.        {
  37.            Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
  38.           Header ("HTTP/1.0 401 Unauthorized");
  39.           exit();
  40.        }
  41.  
  42.  
  43. }
  44.  
  45.  
  46.  
  47.  
  48. ?>
2. caballero - 31 Октября, 2011 - 17:59:18 - перейти к сообщению
во первых поубирай собаки перед функциями - ты не видишь ошибку если она там. и попробуй без них иожет чего вылезет

и уточни что конкретно не работает - можно что угодно понимать под этим
3. saber135791 - 31 Октября, 2011 - 18:11:24 - перейти к сообщению
Убрал, не заработало, ничего не появилось!

Нажимаю на ссылку админ панели, появилось окно, а все что позади окна (весь фон) потемнело, ввожу логин и пароль, нажимаю отправить, все что позади окна посветлело и сразу-же потемнело и не исчезая появилось это же окно! Это будет если ввести логин и пароль не правильно, но я ввожу правильно!
4. DlTA - 31 Октября, 2011 - 18:18:45 - перейти к сообщению
а логин и пароль какой?
5. saber135791 - 31 Октября, 2011 - 18:22:25 - перейти к сообщению
DlTA пишет:
а логин и пароль какой?

Скрипт берет их из базы данных, можно написать любые!
6. snikers987 - 31 Октября, 2011 - 19:07:44 - перейти к сообщению
А зачем такой велосипед?

Просто .htaccess и .htpasswd уже не модно?

Если вам нужна Basic авторизация, она вполне реализуется без PHP.


CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. AuthType Basic  
  3. AuthName "Private zone. Only for administrator!" #Сообщение
  4. AuthUserFile  /home/user/domain/.htpasswd #полный путь к .htpasswd
  5. require valid-user  
  6. <Files .htpasswd>
  7.    deny from all  #запрет доступа из браузера к .htpasswd
  8. </Files>
  9.  
  10.  


.htpasswd генерируй тут http://www[dot]htaccesstools[dot]com/htpasswd-generator/ к примеру
7. saber135791 - 31 Октября, 2011 - 19:12:39 - перейти к сообщению
snikers987 пишет:
Просто .htaccess и .htpasswd уже не модно?

Я в .htaccess не разбираюсь, подскажите что нужно написать?
8. etoYA - 01 Ноября, 2011 - 20:11:30 - перейти к сообщению
Вам ссылку snikers987 написал

 

Powered by ExBB FM 1.0 RC1