кодирование русских слов в md5

Тема в разделе "PHP", создана пользователем microsofd, 4 сен 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. microsofd

    microsofd Создатель

    Регистр.:
    25 фев 2008
    Сообщения:
    22
    Симпатии:
    1
    столкнулся с проблемой.
    в пхп хеш русскоязычного слова полученный использованием ф-ии md5() не совпадает с мд5 хешем того же русскоязычного слова полученный при помощи яваскрипта , при этом хеши англоязычных слов совпадают

    это может быть как то связано с кодировкой?
     
  2. antn

    antn Постоялец

    Регистр.:
    11 июл 2009
    Сообщения:
    104
    Симпатии:
    30
    1. Это не кодирование
    2. JS работает с UTF-8, скорее всего действительно разные кодировки.
     
  3. t0wer

    t0wer BlackHerald

    Регистр.:
    24 июн 2008
    Сообщения:
    733
    Симпатии:
    422
    это по-любому кодировка!
    используй чар-коды или 16-ые при шифровании и сравнении, ошибок не будет.
     
  4. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    Разные кодировки страницы разный текст, надо перекодировать текст в одну кодировку например utf8. Если хеш делается с яваскриптом, тогда в яваскрипте перекодировать текст в utf8 и сделать хеш. Если текст из формы проблем не будет, если тест вписан в html, тогда проблем не будет пока юзер не поменяет кодировку страницы в браузере.

    Ещё способ это отсылать на сервер текст из формы и уже там делать хеш с php или сверять текст, хеш и т. д. Например с ajax отослать текст на сервер и получить хеш текста. Но та же проблема если текст отослать из html то хеш будет другой когда юзер поменяет кодировку.

    Оба примера в атаче.
     

    Вложения:

    microsofd нравится это.
Статус темы:
Закрыта.