| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > PHP + SACK + WINDOWS-1251 = Fu... |
| Автор: Deg 1.3.2008, 21:02 |
| Тема стара как мир, но допустимого решения не нашел: JS -> PHP -> Mysql -> PHP -> JS отправляем русский текст c input'а в 1251 , сервер принимает пишет в базу, читает с базы 1251, посылает клиенту, скрипт тулит в div Используется:
Цель: Поиск по сайту, реализация с использованием явыскрипта. Нужно решение именно на этом CodeKit'е, так как он маленький. p.s. с prototype.js такого не возникает, посылание обычного header("Content-type: text/html; charset=windows-1251") хватает, а с этим - фиг |
| Автор: Sardar 1.3.2008, 21:21 |
| http://www.w3schools.com/jsref/jsref_encodeURIComponent.asp -> http://php.net/rawurldecode? |
| Автор: Deg 1.3.2008, 22:07 | ||
С возвратом результата - все класс, спасибо. Но вот encodeURIComponent передала все нормально в кодах с %, вот только что с ними там делать? PHP-исходник в ANSI |
| Автор: Deg 1.3.2008, 22:26 | ||||||||||||
Да вроде нормально читаю... клиент кодирует строку руссо в %D1%80%D1%83%D1%81%D1%81%D0%BE
Но вот
превращает его в СЂСѓСЃСЃРѕ Где я натупил? Добавлено через 14 минут и 17 секунд Тупка найдена, в начале обработчика на php убрал (как не странно)
|
| Автор: Deg 1.3.2008, 22:49 | ||||
| Опять затупил... Когда делаем вот так:
получаем: руссо ����, т.е. то что пришло с JS - декодилось, а то что echo ("руссо"); - бред!!!! А когда делаем вот так:
Выдает вот такое: СЂСѓСЃСЃРѕ руссо Как быть? |
| Автор: Deg 1.3.2008, 23:44 | ||||
| Нашел выход, да вот глупый до горя, так как думаю что изобрел велик явно не в первый раз, и есть выход с аналогичным результатом и не такой геморный: Файл в ANSI и в него отправляю encodeURIComponent('руссо'), обрабатываю вот этимс:
и вот результат:
Вот теперь Ваши коментарии по поводу моего корявого кода |
| Автор: Sardar 2.3.2008, 00:17 |
Какая кодировка удваивает кириллицу и в ANSI выглядит каракулями? UTF-8 echo iconv("UTF-8", "CP1251", urldecode($_POST['key1'])); |
| Автор: Deg 2.3.2008, 00:46 |
...и еще разок спасибо. Приятно иметь дело с профи |