пароль на ст на страницу index.php черезраницу index.php через php скрипт кто знает ?

Discussion in 'PHP' started by 9822, 7 Jun 2009.

  1. 9822

    9822 Banned

    Joined:
    3 Aug 2005
    Messages:
    273
    Likes Received:
    29
    Reputations:
    8
    раньше ставил скрипт типо security.php
    и на страницы которые хотел разместить пароль
    указывал
    include "security.php";


    и все норм было пока хард не улител =)


    может кто встречал такое ?


    через админку хостинга не предлогать
     
  2. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    security.php:
    PHP:
    <?php
    session_start
    ();
    $login 'admin';
    $password 'admin';
    if(empty(
    $_SESSION['logined'])) {
      if(isset(
    $_POST['login'],$_POST['password']) && !is_array($_POST['login']) && !is_array($_POST['password']) && $_POST['login'] == $login && $_POST['password'] == $password)
        
    $_SESSION['logined'] = 1;
      else {
        echo 
    '
      <form method = "POST">
        <input type = "text" name = "login">
        <input type = "password" name = "password">
        <input type = "submit">
      </form>
    '
    ;
        die;
      }
    } else if(isset(
    $_SESSION['logined'],$_GET['exit'])) {
      
    $_SESSION['logined'] = NULL;
      unset(
    $_SESSION['logined']);
    }
    ?>
    выходить - file.php?exit
     
    #2 Ru}{eeZ, 7 Jun 2009
    Last edited: 7 Jun 2009
    1 person likes this.
  3. FireFenix

    FireFenix Elder - Старейшина

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    лучше тогда в .htaccesss прописать авторизацию
     
  4. Nelzone

    Nelzone Banned

    Joined:
    12 Apr 2008
    Messages:
    172
    Likes Received:
    134
    Reputations:
    6
    security.php:

    PHP:
    <?php
    include("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();
            }


    }



    ?> 
    в bd.php

    PHP:
     <?
    $db 
    mysql_connect ("localhost","root","");
    mysql_select_db("www",$db);
    ?>
    в пхпмуадмине

    PHP:
    #  # Структура таблицы `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, 'adminr', 'admin');  
     
  5. 9822

    9822 Banned

    Joined:
    3 Aug 2005
    Messages:
    273
    Likes Received:
    29
    Reputations:
    8
    Nelzone - это ты не у Алексея Попова случайно взял ? :)

    Ru}{eeZ - спасиб попробую.
     
  6. Nelzone

    Nelzone Banned

    Joined:
    12 Apr 2008
    Messages:
    172
    Likes Received:
    134
    Reputations:
    6
    вово :)
     
  7. 9822

    9822 Banned

    Joined:
    3 Aug 2005
    Messages:
    273
    Likes Received:
    29
    Reputations:
    8
    Nelzone

    я отказался от него по причина прописал все норм мне он пишет


    Warning: Cannot modify header information - headers already sent by (output started at /home/content/a/n/d/andrey25/html/admin/index.php:8) in /home/content/a/n/d/andrey25/html/admin/security.php on line 6

    Warning: Cannot modify header information - headers already sent by (output started at /home/content/a/n/d/andrey25/html/admin/index.php:8) in /home/content/a/n/d/andrey25/html/admin/security.php on line 7


    6 и 7 lines
    это

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



    у тебя не было такова бага ?
     
    #7 9822, 7 Jun 2009
    Last edited: 7 Jun 2009
  8. wildshaman

    wildshaman Elder - Старейшина

    Joined:
    16 Apr 2008
    Messages:
    478
    Likes Received:
    483
    Reputations:
    99
    Сохраняй в utf8 без BOM
     
  9. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    to 9822
    а чем тебя мой вариант не устраивает?
     
  10. d3b4g

    d3b4g New Member

    Joined:
    15 Nov 2008
    Messages:
    26
    Likes Received:
    3
    Reputations:
    -10
    зачем лишние строчки кода когда .htaccess + авторизация делает тоже самое....
     
  11. Nelzone

    Nelzone Banned

    Joined:
    12 Apr 2008
    Messages:
    172
    Likes Received:
    134
    Reputations:
    6
    все норм я проверял..

    вот кусочик админки из wr
    http://rapidshare.com/files/241791822/memb.rar.html
     
    #11 Nelzone, 7 Jun 2009
    Last edited: 7 Jun 2009
  12. 9822

    9822 Banned

    Joined:
    3 Aug 2005
    Messages:
    273
    Likes Received:
    29
    Reputations:
    8
    Nelzone вспомнил в чем прикол =)) и на что злой на попова был, сам виноват =))


    надо <?php include("security.php"); ?> ставить перед HTML кодом вспомнил когда писал движек, так этуже ошибку мне выдовал ;)

    вдруг у кого проблеммы будуд такие.





    Ru}{eeZ
    сейчас мини движек пишу, там твой вариант поставлю ;)
    у меня уже была создана таблица со всеми что Nelzone писал.




    у нас хотсинг в USA какойто левый там баг с .htaccess