Tопостовление по 1 шинглу(ам) состовляет 100% идентичности текста.
Tопостовление по 2 шинглу(ам) состовляет 0% идентичности текста.
Tопостовление по 3 шинглу(ам) состовляет 0% идентичности текста.
Tопостовление по 4 шинглу(ам) состовляет 0% идентичности текста.
Улыбнуло.
Если проверять напрямую ($sign == $sign_1) - то возвращает всегда false, что ему в этой var2 не нравится :(
Всё, к чему можно как-то прицепиться - это то, что эта var2 мой модуль получает от .tpl файла, тоесть туда передаётся /link.html?var2=текст, в шаблоне я это обрабатываю:
Стоит убрать var2 из списка и вроде-как всё встаёт на свои места, стоит поменять $var2 не на значение из get запроса, а на готовую строку в ковычках - всё работает как надо.
Дело происходит в модуле для DLE (если делать всё это в .tpl файле, то такого не наблюдается). Есть две строки, обе - один в один, единственная разница:
Что за чушь вы тут написали :)
При чём тут ваш код и:
Объясните что вам нужно точно и покажите весь код.
Просто в базу заносилось пустое поле, я начал искать почему и сделал вывод на страницу через echo, результат меня морально опустошил.
Всё прошло само по себе, не знаю даже, что это за херня была.
Tопостовление по 1 шинглу(ам) состовляет 100% идентичности текста.
Tопостовление по 2 шинглу(ам) состовляет 0% идентичности текста.
Tопостовление по 3 шинглу(ам) состовляет 0% идентичности текста.
Tопостовление по 4 шинглу(ам) состовляет 0% идентичности текста.
Улыбнуло.
Если проверять напрямую ($sign == $sign_1) - то возвращает всегда false, что ему в этой var2 не нравится :(
Всё, к чему можно как-то прицепиться - это то, что эта var2 мой модуль получает от .tpl файла, тоесть туда передаётся /link.html?var2=текст, в шаблоне я это обрабатываю:
И далее достаю этот самый var2, который передаю в модуль при покдлючении
Ни у кого нет идей? :(
Результат вывода покажите. Лучше прямо на сайте.
Tопостовление по 1 шинглу(ам) состовляет 100% идентичности текста.
Tопостовление по 2 шинглу(ам) состовляет 0% идентичности текста.
Tопостовление по 3 шинглу(ам) состовляет 0% идентичности текста.
Tопостовление по 4 шинглу(ам) состовляет 0% идентичности текста.
Улыбнуло.
Строки покажите и их хэши.
Стоит убрать var2 из списка и вроде-как всё встаёт на свои места, стоит поменять $var2 не на значение из get запроса, а на готовую строку в ковычках - всё работает как надо.
Ничего не изменилось, это явно не пробелы...
34 - у правильной (которая просто текстом), 33 - у собранной из переменных :(
Возможно недоглядели пробел. Попробуйте trim()
Ничего не изменилось, это явно не пробелы...
KoBaL, попробуйте вывести внутри скрипта обе переменные и их хэши:
и посмотрите на результат.
Строка - одинаковая, MD5 - разный!
---------- Добавлено 24.05.2013 в 00:58 ----------
var_dump($sign_1);
sizeof($sign1);
var_dump($sign);
sizeof($sign);
Вот это уже интересно: в одной из них в массиве string(34), у другой - 33
Я, блин, спать не могу пойти, пока не разберусь :(
KoBaL, смотрите кодировку символов из которых формируется хэш. Дело, скорей всего, именно в ней.
Я пытался перевести все в Windows-1251 или в UTF-8 через mb_convert_string (что-то типо того) - результата никакого :(
---------- Добавлено 24.05.2013 в 00:52 ----------
KoBaL, смотрите кодировку символов из которых формируется хэш. Дело, скорей всего, именно в ней.
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 переменные.
ПОМОГИТЕ, УЖЕ ЧАСА ПОЛТОРА СИЖУ, ВООБЩЕ НЕ МОГУ ПОНЯТЬ ЧТО ЭТА ШТУКА ОТ МЕНЯ ХОЧЕТ!
Всем большое спасибо за подсказки! Очень выручили!