За последние 24 часа нас посетили 52862 программиста и 1768 роботов. Сейчас ищут 922 программиста ...

Авторизация с хешированием!

Тема в разделе "PHP для новичков", создана пользователем Noll, 22 фев 2016.

  1. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    сорри,это уберу! Но ведь проблема не в этом

    Добавлено спустя 4 минуты 8 секунд:
    что то мне кажется,что гдето мог не там скобку } установить,возможно и значение выхода не верное!
    ладно,пока проверю всё!
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    ну проблема-то не в этом. проблема в логике и в отсутствии должной отладки. я уже об этом выше написал. дальше я потихонечку советов насыпаю по говнокоду. отладку ты должен сам сделать. убедиться что всё правильно. или даже оставить комп в сторону, взять бумажку и карандаш, нарисовать блоксхему и потом с нуля написать алгоритм согласной утвержденному. а потом его отладить. и задача решена.
     
  3. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    неа! гдето не сходятся пароли...все скобки верны!
    в чем же дело? вродь много перепробовали и ничего!
    Сейчас ошибка..."ВСЕ ПЛОХО"...
    Я понимаю,что скрипт теряет где-то логику,чето ему не приходит...
    Как или чем бы отладить?

    Добавлено спустя 3 минуты 6 секунд:
    в запросе убрал выделенное красным:
    $sql=mysql_query("SELECT * FROM `tb_users` WHERE `email`='".mysql_real_escape_string($username)."' and `password`='".mysql_real_escape_string($password)."'");
    Теперь сверку,что пароль не верен не показывает!Но показывает предыдущую ошибку

    Добавлено спустя 18 минут 9 секунд:
    хм,а когда убираю md5 в строке $password = md5($pass); и в БД меняю пароль на открытый(латиница и цифры без символов)- то всё авторизирует!!! Очень странно,кстати...
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ты видимо даже не знаешь, что у тебя в бд
     
  5. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    почему же не знаю?)
    Код (PHP):
    1. PRIMARY KEY (`id`),
    2.   UNIQUE KEY `username` (`username`),
    3. ///password тут нету в кеях
    4.   KEY `....
    5. ) ENGINE=MyISAM  DEFAULT CHARSET=cp1251
    возможно кодировка не в попад! но всё же я чарсет настраивал...

    Добавлено спустя 7 минут 9 секунд:
    я так полагаю UNIQUE KEY-это ограничитель на параметры в таблице...
    эти преобразования играют там роль:
    -Геометрия
    -Текст (WKT)
    -Бинарный (WKB) ???
    у меня отмечена геометрия
     
  6. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Игорь тебе не об этом сказал а об данных. ты же отладку не делаешь. ты не знаешь какие переменные перед запросом. ты не знаешь что запрос вытягивает из субд. ты не знаешь переменные после обработки.
     
  7. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    впринцыпе,не понимаю,причем тут БД,так как сам запрос и результат с неё то приходит! Выше то проверял

    Добавлено спустя 13 минут 41 секунду:
    чето кажется мне здесь в сверке не то
    Код (PHP):
    1. $row["password"]==$password
    проверено,что в базе хеш вида 12345abcd проверил через update в БД записать полученое значение с
    Код (PHP):
    1. $password = md5($pass); 
    и значения были идентичными во всех случаях(на всяк пожарный и запрос этим методом на имейл поставил-тож результат положительный)
    Но почему же при сверке дает отрицание?
    Кодировка может влиять на хешированное число?(почему то в этом сомневаюсь!)
     
  8. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    ну и не понимай дальше. тебе тут одно и тоже говорят а ты продолжаешь этого не делать и не понимать. продолжаешь в своем духе, не получаешь результат и тратишь время. ладно своё, но мы-то тебе чего плохого сделали?
     
  9. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    Так вот же и думаю,как бы отладить и с чего начать!
    может сюда тройное равенство влепить?))
     
  10. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.600
    Симпатии:
    1.764
    Noll, тебе же объясняют. Отладка - это не когда ты наобум двойное равенство меняешь на тройное, потом тройное на >=, а потом на всякий случай вообще равенство убираешь, а вдруг сработает. Отладка - это когда ты смотришь, как у тебя меняются значения переменных на каждом шаге алгоритма, и насколько это соответствует твоим ожиданием. Делается это либо с помощью визуального отладчика, такого как XDEBUG + IDE, либо с помощью расстановки конструкций
    Код (PHP):
    1. var_export($variable); die; 
    по ходу программы. После этого ты уже смотришь, что как и почему работает или не работает
     
  11. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    хорошо! буду проверять...

    Добавлено спустя 30 минут 30 секунд:
    на моем хосте отключен дебаг-проверил phpinfo
    в php.ini мог бы прописать,но не знаю их путь...
     
  12. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
  13. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
  14. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    не говори так!
     
  15. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.600
    Симпатии:
    1.764
    Чтоб темы на форуме не иссякали?
     
  16. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Это всё сложно, что ты говоришь! Это пугает!
     
  17. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    Чтоб темы на форуме не иссякали-надо их решать!
    Всё конечно вполне приемлимо насчет отладчиков и дебагов(всё это настраивать лень!) и методов других расчетов,но я уж обратился к вам,чтоб хоть на реальном примере подсказали-где копать!Мож значек не тот или тот...
    Всю вышеизложенную информацию я читал раньше и сейчас мне больше нужны идеи по поводу решения этой задачи(ведь не прошу всё решить за меня)...
    Я ведь не такой уж и нуб...всё же к своему сайту было проще интегрировать автовыплаты яндекс,чем с авторизацией разобраться....
    Хотя посмею сказать,что по ходу мы не там копаем(думаю,дело не в этом скрипте!-всё таки,эту форму я переписал с ноля,но значения сессий осталось со старой формы...)
    Надо поразмыслить...
     
  18. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    что-то лень тут писать тебе ответ, вот так это и работает
     
  19. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    освой программирование. как тебе такая идея? пока я вижу что ты очень сильно плаваешь в том что написал. ты не понимаешь как оно работает. и видимо даже не понимаешь как оно должно работать. и это утверждение было бы неверным, если бы ты за прошедшие сутки врубил голову, обложил код вардампами, увидел бы реальные значения, сравнил бы их с ожиданиями своей головы, и придумал бы как заставить пхп-машину мыслить как ты. но тебе лень. на форум ходить зато смотрю не лень.
     
  20. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    хорошая идея! Но была бы беззаботная голова и одна работа,а не три,как у меня,то вообще б супер было)
    Понятие работы этого условия,немного мне понятны-не скрою!
    Моя лень-это усталость!Но не важно...мы здесь рассуждаем о php
    Короче суть решения задачи в том,что с поста значение паспорта не приходит! Установил константу пароля на самом скрипте и без ввода пароля залогинился! Прикол в чем-хешированные данные методом пост не передаются! Есть идеи?
     
  21. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Да, ЗАЙМИСЬ, БЛИН, УЖЕ ОТЛАДКОЙ.
    За тебя твой код отлаживать никто не будет. Если это тебе не нужно/лень, то никому другому тем более не нужно\лень.

    Либо найди исполнителя, дай ему денег, он починит все.

    Все остальное - ересь, размазывание козюль по стенке, пустая трата времени и эзотерика на грани экстрасенсорики.
     
  22. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    начни с того, чтобы заглянуть в бд =)
     
  23. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    Вижу,нервишки не выдержали))
    Спасибо, ребята, за терпение!
    ЗАДАЧА РЕШЕНА! Платить не буду-сам нашел))) точней дописал)
     
  24. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.600
    Симпатии:
    1.764
    Noll, тут все и видят своей задачей, чтоб ты сам в итоге нашёл решение.
     
  25. Noll

    Noll Новичок

    С нами с:
    1 ноя 2015
    Сообщения:
    50
    Симпатии:
    0
    Спасибо! Но ведь иногда совет и более опытных тоже необходим!)