ну вот если я решу взломать юзера MAXUS к примеру)))) я ж могу зайти в любую тему и увидеть его логин в коментах к постам))
Я ж не знаю, какая у тебя конкретная задача. В отношении форума, согласен, не особо поможет, но в отношении какого-нибудь сервиса усложнит. А регистрозависимый пароль - это обязательно, кмк. Хотя... по большому счету тоже зависит от задачи. Ты просто про фэншуй спрашивал. Как сказал один пожарник, по фэншую вместо экибаны тут должен быть огнетушитель
Alessanderrr пишет:
Хотя, мне сейчас пришло в голову: данная проблема упраздняется в случае, если при регистрации обязательно указание email.
Если используешь e-mail, то обязательно организуй подтверждение через отправку письма. И принимай во внимание, что в email регистр не играет роли.
Alessanderrr пишет:
А вот это очень прикольно)) можно примерчик, как это добро реализовать?
Нене... Опытом поделиться или что-то для себя интересное подчерпнуть - это завсегда. А напишите за меня пожалуйста - это, прости, но лень. В общих чертах - меняешь все спорные символы на определенный символ латиницы, таким образом формируешь хэш. Например, ноль на O, при этом переводишь или в нижний или в верхний регистр (как удобно). При проверке на существование сравниваешь с ним, а не с логином.
Количество комбинаций возрастает в разы, таким образом усложняется подбор. Обрати внимание на сообщения о степени защищенности пароля в банковских системах, например, да в тех же cms.
В моем случае логин нужен для форума-блога и т.д., т.е. там, где у любого незареганного есть возможность вживую увидеть логины. В данной ситуации мне кажется наличие-отсутствие регистра при вводе логина значения особого не имеют... или я не прав?
ну вот если я решу взломать юзера MAXUS к примеру)))) я ж могу зайти в любую тему и увидеть его логин в коментах к постам))
Хотя, мне сейчас пришло в голову: данная проблема упраздняется в случае, если при регистрации обязательно указание email, который не отображается в профиле, и при этом авторизация производится по сочетанию email/пароль, а не логин/пароль, верно? или я неправ? если неправ, где и почему?
MAXUS пишет:
Отсекает. Но не отсекает первый пример, где вместо O используется ноль. Про кириллицу просто для примера сказал. В моей практике был миллион случаев, когда, например, на форумах тролли регистрировали похожие на нормальных пользователей имена и писали от их имени всякую хрень. Модераторов иногда это ставило в конкретный тупик
А вот это очень прикольно)) можно примерчик, как это добро реализовать?
Таки, прошу объяснить, зачем должен иметь значение регистр логина при авторизации? Не с целью поперепираться, но с целью понять как правильно и почему
MAXUS пишет:
Тебе же написали, что проверка на существование у тебя составлена не правильно. Всегда возвращает true.
Прочитал коряво первый ответ, отвлекли, пардон. Теперь понял! (Добавление)
MAXUS пишет:
Да. Я бы еще проверял на совпадение TOMAS и T0MAS. А при использовании кириллицы ТОМАS и TOMAS... Т.е. приводил к одному хэшу из латиницы.
Если я правильно понял вышенаписанное, то моя первая проверка отсекает возможность написание чего-либо кириллицей... Не?
если нет, то можно примерчик как правильно?
1) Как сделать (по феншую) проверку логина и авторизацию регистронезависимой?
В моем представлении по феншую проверка логина и пароля должна быть как раз регистрозависимой.
Другой вопрос - это желание избежать дублирования имен типа Vasya и vaSya, но это к проверке не относится. В этом случае при проверке существования при регистрации приводить передаваемое и получаемое значения к одному регистру.
Таки, проверка должна быть регистронезависимой для логина (в моем понимании) а для пароля, конечно, регистрозависимой. Зачем регистрозависимость для логина? логины видят все кому интересно, и это получается только неудобство при авторизации доставит, а пользы никакой.. не?
и я на пальцах понял как это сделать, но вопрос был не в том, делать ли или нет, а как именно сделать)
Собственно, решение видится так:
При сравнении существует ли такой юзер, значение из базы и значение из введенной формы приравнивается к одинаковому регистру, и таким образом дубль юзера создать не даст. Так же и при авторизации - сначала значения приводятся к единому регистру, а уже затем сравниваются, и если совпадают, то проверка выполняется успешно.
Сначала написал свое решение потом до конца сообщение написал, мы одно и то же написали)))
Но главная беда моего поста в том, что у меня процесс встал на проверке наличия такого же юзера в базе - что бы я ни ввел (при условии выполнения условий допустимости символов и длины логина) я в любом случае получаю сообщение о том что такой юзер уже существует. Косяк гдета должен быть элементарный но найти его чета у меня не получается, вот и прошу помощи!
Доброго времени суток, Товарищи!
Дополз помаленьку до регистрации пользователя.
Сначала создал просто ввод данных в форму и добавление регистрации, затем начал помаленьку добавлять условия. Вроде все сделал, все условия работали, перешел к разбору инфы о том как пароль проверять. Первый тест - и он у меня ругается на введенный логин, что мол уже существует в системе!
Пересмотрел вроде все на несколько раз, ниче найти не могу. Странно еще то, что я ж ниче вроде не менял больше, мистика, однако!
Помогите найти косяк, пожалуйста)
И заодно ответьте мне на пару наверно банальных вопросов:
1) Как сделать (по феншую) проверку логина и авторизацию регистронезависимой?
2) Могу ли я сравнивать значение в базе со значением переменной $password? Не очень пока понимаю, как работает md5.
3) Проверку длины пароля нужно делать на основе $_POST['password'] и ни в коем случае не $password, верно? или я совсем балбес и нифига не шарю и всё напрочь не так? если да, то как надо?
Потратил весь вечер на поиски, почему у меня вообще всё работать перестало... Долго разглядывал код, методом научного тыка правил, читал мануал по всем функциям что там есть... Нашёл.
В конце строчки while стоял ";"
Тяжелая это работа, быть нубом
Alessanderrr ну так я привел ваш скрипт, к более нормальному, обычному виду
хотя до нормального ему еще очень далеко!
и тогда еще одно, библиотека mysql_* уже давно устарела, а в следующей версии php будет удалена http://php.net/manual/ru/functio...ysql-connect.php , так что не тратьте время на ее изучения, приступайте сразу к mysqli или pdo
я начинал изначально работать именно с mysqli, но у меня тогда появились проблемы с подключением к базе, и я все поправил на mysql, тк какие-то функции я на mysql нашел, а на mysqli - нет,а вперемешку оно ругалось друг на друга но вроде потом разобрался, а то что было изначально - не поправил, исправлюсь!
А до нормального далеко - то да, но я буду стремиться именно к "Нормальному"!
Спасибо большое) (Добавление)
exlant пишет:
Alessanderrr ну так я привел ваш скрипт, к более нормальному, обычному виду
хотя до нормального ему еще очень далеко!
это чисто поповская фишка, которая показывает полную его некомпетентность в этой сфере деятельности!
На каком-то форуме такой же чайник как я вопрос задавал, у него чета не получалось, я оттуда и стащил, посмотрев что работает и подпилив под себя...
А как надо правильно? научите, пожалуйста
касательно того , что я не понял, как они работают - вполне таки не исключено, хотя имеющиеся примеры я вроде разобрал
не изучайте php по попову, да вообще ничего по нему не изучайте, он мало того что даже самые основы дает в каком то дико перевернутом виде! Так еще и учит именно так, как делать не надо!
Ни коим образом, никакие книжки и онлайн-курсы не читаю, есть задача, и я пытаюсь ее реализовать, с помощью php.net, форумов, ну и иногда каких-либо статей, но зачастую этого недостаточно бывает.. Общие случаи приводятся, но иногда нужны частности.. Поэтому я тут
За код огромнейшее спасибо, это как раз то, чего у меня не получилось нагуглить, но я предполагал что как-то так должна быть возможность делать! Скоро попробую)
echo'Congratulations, you moved on page '.$id.')';
Таки, с этими простыми примерами я понял, но можно ли передать туда не конкретное значение, а переменную?
скажем, id у меня может принимать значение от до бесконечности, в зависимости от того, на какую ссылку нажимаю
касательно того , что я не понял, как они работают - вполне таки не исключено, хотя имеющиеся примеры я вроде разобрал
Доброго времени суток, товарищи!
Я совсем зеленый новичок, и у вас, думаю, теперь буду частый гость)
Помогите, пожалуйста, со следующей бедой:
Имеется недоделанная страница с анонсами постов (пока что выводится инфа целиком), в конце каждого анонса есть ссылка read more.
По моей мысли, она перенаправляет на другую страницу, которая из базы подгружает по id поста остальную инфу. И тут я столкнулся с бедой: я хоть убей не могу сообразить, как передать значение id поста.
Имею следующее: index.php:
page.php
сейчас пустая, в нее нужно передать значение $mypostid. Весь день потратил на поиски информации... Думал каким-то образом передать через $_GET или $_POST, долго мучился, но недавно наткнулся на каком-то форуме на сообщение, что эти массивы действуют только в рамках одного скрипта, это объяснило, почему у меня page.php постоянно пустая оказывается...
Часто на форумах находил фразу "изучай сессии". Пытался подключить сессии, выдает ошибку, и все равно нифига не работает. Помогите, пожалуйста