Просто в базу заносилось пустое поле, я начал искать почему и сделал вывод на страницу через echo, результат меня морально опустошил.
Всё прошло само по себе, не знаю даже, что это за херня была.
2184:D45E163FF5E04D91:12C1F7B | f162aede76549abfceda77aa4929bc7f<br>2184:D45E163FF5E04D91:12C1F7B | 5767074dc3b8bf80c0fcc58ec427a4c5
Если проверять напрямую ($sign == $sign_1) - то возвращает всегда false, что ему в этой var2 не нравится :(
Всё, к чему можно как-то прицепиться - это то, что эта var2 мой модуль получает от .tpl файла, тоесть туда передаётся /link.html?var2=текст, в шаблоне я это обрабатываю:
$server_uri = $_SERVER['REQUEST_URI']; parse_str ($server_uri,$get_request);
И далее достаю этот самый var2, который передаю в модуль при покдлючении
Ни у кого нет идей? :(
Tопостовление по 1 шинглу(ам) состовляет 100% идентичности текста.
Tопостовление по 2 шинглу(ам) состовляет 0% идентичности текста.
Tопостовление по 3 шинглу(ам) состовляет 0% идентичности текста.
Tопостовление по 4 шинглу(ам) состовляет 0% идентичности текста.
Улыбнуло.
string(32) "f162aede76549abfceda77aa4929bc7f" - $sign_1 = '2184:D45E163FF5E04D91:12C1F7B';string(32) "5767074dc3b8bf80c0fcc58ec427a4c5" -$sign = $var1.':'.$var2.':'.$var3;
Стоит убрать var2 из списка и вроде-как всё встаёт на свои места, стоит поменять $var2 не на значение из get запроса, а на готовую строку в ковычках - всё работает как надо.
34 - у правильной (которая просто текстом), 33 - у собранной из переменных :(
Ничего не изменилось, это явно не пробелы...
Строка - одинаковая, MD5 - разный!---------- Добавлено 24.05.2013 в 00:58 ----------
Вот это уже интересно: в одной из них в массиве string(34), у другой - 33
Я, блин, спать не могу пойти, пока не разберусь :(
Я пытался перевести все в Windows-1251 или в UTF-8 через mb_convert_string (что-то типо того) - результата никакого :(---------- Добавлено 24.05.2013 в 00:52 ----------
mb_detect_encoding все строки показывает как ASCII
Дело происходит в модуле для DLE (если делать всё это в .tpl файле, то такого не наблюдается). Есть две строки, обе - один в один, единственная разница:
1. Готовая строка
2. Собирается из других
Первая строка:
$sign_1 = 'IDСтатичный:УникальныйКод:Ключ(ста тичный)';
- получаю из готово введённой строки MD5 - получается правильный результат
$sign = $var_1.':'.$var_2.':'.$var_3;
- получаю готовую строку, которая 100% ПОВТОРЯЕТ SIGN_1, НО ЕСЛИ ИЗ НЕЁ ПОЛУЧИТЬ MD5 - Получается совершенно другое!
Пытался сделать так: $sign_1 = 'IDСтатичный:'.$var_2.':ключ'; - результат такой же, как если собирать все 3 переменные.
ПОМОГИТЕ, УЖЕ ЧАСА ПОЛТОРА СИЖУ, ВООБЩЕ НЕ МОГУ ПОНЯТЬ ЧТО ЭТА ШТУКА ОТ МЕНЯ ХОЧЕТ!
Всем большое спасибо за подсказки! Очень выручили!