Страница 1 из 1

авторизация в php

Добавлено: 2010-06-13 13:28:37
вечный ученик
делаю авторизацию на php. Есть уже готовые php-файлы. Создал следующий файл auth.php:

Код: Выделить всё

require('link.php');

session_name("TEST");
session_start();


if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="TEST"');
header("HTTP/1.0 401 Unauthorized");
echo "Не имеете доступа к этой странице!";
exit;
                                        }

                else {//1
#echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
#echo "<p>Вы ввели пароль {$_SERVER['PHP_AUTH_PW']}.</p>";

$user=trim($_SERVER['PHP_AUTH_USER']);
$pass=trim($_SERVER['PHP_AUTH_PW']);

$select = "select si_group,si_name,si_boss,si_login,si_pass,si_id from site
where si_login='$user' and si_pass='$pass'";
$res=mysql_query($select, $link_ev);


         if( !$res) {
        echo "<h2>Ошибка: Не удалось запросить данные с сервера</h2>";
        session_unset();
        exit;
     }
     $row = mysql_fetch_row( $res);

if( !$row) {
        header('WWW-Authenticate: Basic realm="TEST"');
        header('HTTP/1.0 401 Unauthorized');
        echo "<h2>Не найдено в БД</h2>";
        mysql_free_result( $res);
        session_unset();
        exit;
      }

 $si_group=$row[0];
 $si_name=$row[1];
 $si_boss=$row[2];
 $si_login=$row[3];
 $si_id=$row[5];


теперь правильно понимаю, что необходимо и достаточно добавить этот файл в начало во все существующие скрипты на php?
может чего упустил?

Re: авторизация в php

Добавлено: 2010-06-13 22:26:41
ProFTP
нет

сделай в виде ООП или в виде функций
или возьми готовый класс

для не изобретения велосипедов есть Yii PHP Framework или Zend Framework или другие

Re: авторизация в php

Добавлено: 2010-06-15 10:02:56
вечный ученик
пасиб, но мне до этого еще расти и расти(по поводу готовых решений)
буду знать к чему стремиться