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
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Авторизация. Как вам код?
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
Мелкий
Отправлено: 17 Июня, 2011 - 11:13:27
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
А может проще будет вообще $_SESSION["priv"]=$myrow_login ?
----- PostgreSQL DBA
Stierus
Отправлено: 17 Июня, 2011 - 11:58:55
Рекордсмен по количеству сообщений за 7 дней
Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008 Откуда: Москваль
Помог: 52 раз(а)
1. конвертация кодировок, почитайте http://ru2.php.net/manual/en/fun...iconv.php#103860 , вдруг наткнетесь на что-то интересное в комментариях.
2. $result_login = mysql_query("SELECT * FROM users WHERE login='$login' and pass='$pass'",$db);
я бы искал только по логину, потом сравивал бы пароли, полученные из бд с паролем, полученным от пользователя. Исключительно mysql выборке не стоит верить на 100%
DeepVarvar
Отправлено: 17 Июня, 2011 - 12:27:40
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Помог: 353 раз(а)
Stierus пишет:
Исключительно mysql выборке не стоит верить на 100%
Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008 Откуда: Москваль
Помог: 52 раз(а)
Потому что никто не может дать гарантии, что ты учел все и sql инъекции нет. Даже тупо поменяв местами логин и пасс, ты себя обезопасишь в разы, ибо в пассе лежит md5, мы уверены, что там все чисто и что отсев хотя бы по паролю точно будет. (Добавление)
а если есть iconv - темболее, я не знаю ни одного человека, который бы полностью знал механизм работы этой функции и мог на 100% предвидеть результат его работы на строке, полностью зависимой от пользователя.
OrmaJever
Отправлено: 17 Июня, 2011 - 13:26:19
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Мелкий пишет:
А может проще будет вообще $_SESSION["priv"]=$myrow_login ?
ппц меня на смех потянуло. Как всё бывает просто
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
Serpanok
Отправлено: 17 Июня, 2011 - 15:25:08
Частый гость
Покинул форум
Сообщений всего: 133
Дата рег-ции: Февр. 2011 Откуда: Красный Лиман, Украина
Помог: 0 раз(а)
Stierus, переделал как ты сказал. Реально это же даже если в пас и написань sql инекцию она не сработает потому что мы её конвентим md5, а логин я проверяю потом.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.