kaliostro_den 2 Опубликовано: 6 ноября 2009 Рассказать Опубликовано: 6 ноября 2009 Вообщем проблема в том что пользователи использующие в своём пароле спец символы типа <> и другие, которые потом преобразуются в HTML сущности, не могут войти на сайт с таким паролем. Объясняю как это происходит, когда пользователь менят пароль в своём акаунте на пароль со спец символами его пароль следующие стадии обработки $password1 = $db->safesql( $parse->process( $_POST['password1'] ) ); и потом $password1 = md5( md5( $password1 ) ); на первом этапе все спец символы в пароле заменяются на HTML сущности, функцией парсинга, если писать конкретнее то $source = str_replace( "<>", "<>", str_replace( ">>", ">>", str_replace( "<<", "<<", $source ) ) ); Также там фильтруются и другие теги. и в этоге мы на выходе получаем уже не тот пароль который водил пользователь. при следующей авторизации на сайте его просто не пустит с новым паролем, так как файл логина не проделывает таких операций с водимыми данными. Прошу ответить мне каким способом вы будете решать эту проблему в след версиях ДЛЕ. Я бы лучше убрал байду обработки пароля при изменении пароля в профиле, даже в функции $db->safesql для пароля нет никого смысла. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 6 ноября 2009 Рассказать Опубликовано: 6 ноября 2009 Принято. Будет убрано в 8.3 Цитата Ссылка на сообщение Поделиться на других сайтах
ks95 2 Опубликовано: 7 ноября 2009 Рассказать Опубликовано: 7 ноября 2009 kaliostro, эвон, как оно всё хитро оказалось! Большое Вам спасибо, что вникли в суть проблемы и помогли мне исправить её на моей площадке. Без такого хорошего знания матчасти, как у Вас, тут явно не разберёшься. Ещё раз спасибо (Вы понимаете, о чём я). Из ответа разработчика становится понятным, что такая же проблема, возникшая у меня, является хотя и не характерной для любого заурядного пользователя движком, но при определённых условиях (а именно - при назначении пароля со спецсимволами) может вызвать просто взрыв мозга. Я чуть было не убился с этим, спасибо kaliostro что выручил! Хорошо ещё, что как раз по случаю на сайте оказалось два админских аккаунта, а иначе как бы проблему исправлять?.. (может быть только через функцию восстановления пароля?) celsoft, kaliostro, спасибо вам, уважаю ваш профессионализм! Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.