Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Нужна оценка по сессии
 
 автор: clubxaliav   (28.04.2011 в 22:18)   письмо автору
 
 

Подскажите такая сессия для входа нормальная и можно ли из нее сделать функцию? Чтоб не вставлять этот код на каждую старницу!


if (empty($_SESSION['username']) or empty($_SESSION['password'])) { 
    header( "Location: login.php" );
    }

else {
     $username = $_SESSION['username'];
      $password = $_SESSION['password'];

      $sql = ("SELECT * FROM $tables[t_users] WHERE username = '$username' AND password = '$password'");
      $result = mysql_query($sql);        
      $sess = mysql_fetch_array($result);

         $user = $sess['username'];
         $pass = $sess['password'];   

           if( ($user == $username ) && ( $pass == $password ) )  {    }

    }

  Ответить  
 
 автор: parczynski   (28.04.2011 в 23:18)   письмо автору
 
   для: clubxaliav   (28.04.2011 в 22:18)
 

1) достаточно сделать проверку в базе данных, то есть if( ($user == $username ) && ( $pass == $password ) ) имхо лишнее,
2) нужно проверять значения $username и $password на потенциально опасные символы для sql-иньекций перед запросом
3) не вижу смысла при каждой загрузке страницы проверять значения в базе данных, достаточно проверить пользователя один раз при авторизации, и если она удачная просто хранить в сессии флаг об этом.
4) чтобы не вставлять этот код на каждую страницу его нужно сохранить в отдельный файл, но этот файл все равно придется инклудить в каждую страницу

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования