ФорумПрограммированиеPHP для идиотов → Помоготе найти ошибку

Помоготе найти ошибку

  • vsp14

    Сообщения: 2 Репутация: N Группа: Кто попало

    Spritz 30 января 2010 г. 12:32, спустя 11 минут 10 секунд

    Устанавливаю защиту паролем на страницу, имется готовый скрипт lock.php

    <?php
    include("bloks/bd.php");

    if (!isset($_SERVER['PHP_AUTH_USER']))

    {
         Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
         Header ("HTTP/1.0 401 Unauthorized");
           exit();
    }

    else {
           if (!get_magic_quotes_gpc()) {
                   $_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);
                   $_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']);
           }

           $query = "SELECT pass FROM userlist WHERE user='".$_SERVER['PHP_AUTH_USER']."'";
           $lst = @mysql_query($query);

           if (!$lst)
           {
               Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
           Header ("HTTP/1.0 401 Unauthorized");
           exit();
           }

           if (mysql_num_rows($lst) == 0)
           {
              Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
              Header ("HTTP/1.0 401 Unauthorized");
              exit();
           }

           $pass =  @mysql_fetch_array($lst);
           if ($_SERVER['PHP_AUTH_PW']!= $pass['pass'])
           {
               Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
              Header ("HTTP/1.0 401 Unauthorized");
              exit();
           }


    }




    ?>


    и таблица в mysql

    Структура таблицы `userlist`


    CREATE TABLE `userlist` (
    `id` int(3) NOT NULL auto_increment,
    `user` varchar(50) NOT NULL default '',
    `pass` varchar(50) NOT NULL default '',
    PRIMARY KEY (`id`)
    ) TYPE=MyISAM AUTO_INCREMENT=2 ;

    #
    # Дамп данных таблицы `userlist`
    #

    INSERT INTO `userlist` VALUES (1, 'phpuser', 'php');



    В начало защищаемого файла устанавливаю

    <?php include ("lock.php");?>


    при обращении выскакивает ошибка

    Warning: Cannot modify header information - headers already sent by (output started at z:\home\localhost\www\kemt\admin\bloks\bd.php:4) in z:\home\localhost\www\kemt\admin\lock.php on line 7

    Warning: Cannot modify header information - headers already sent by (output started at z:\home\localhost\www\kemt\admin\bloks\bd.php:4) in z:\home\localhost\www\kemt\admin\lock.php on line 8

    тут не просто так дохуя разных подсветок синтаксиса….
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 января 2010 г. 11:34, спустя 23 часа 1 минуту 58 секунд

  • soul

    Сообщения: 790 Репутация: N Группа: Кто попало

    Spritz 30 января 2010 г. 12:21, спустя 46 минут 52 секунды

    тема стара как тема сисек
  • vsp14

    Сообщения: 2 Репутация: N Группа: Кто попало

    Spritz 30 января 2010 г. 12:37, спустя 16 минут 6 секунд


    http://www.phpfaq.ru/all#headers

    http://www.phpfaq.ru/all#headers

    Спасибо огромное всё заработало, я начинающий поймите и простите за глупые вопросы.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 30 января 2010 г. 13:04, спустя 26 минут 24 секунды



    http://www.phpfaq.ru/all#headers

    http://www.phpfaq.ru/all#headers

    Спасибо огромное всё заработало, я начинающий поймите и простите за глупые вопросы.
    поняли и простили за глупые вопросы
    Сапожник без сапог
  • soul

    Сообщения: 790 Репутация: N Группа: Кто попало

    Spritz 30 января 2010 г. 13:05, спустя 58 секунд

    расслабься, я же пошутил :)

Пожалуйста, авторизуйтесь, чтобы написать комментарий!