![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Satell |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 79 Регистрация: 28.6.2007 Репутация: нет Всего: нет |
из формы с текстовым полем name=word передаётся запрос для яндекса в скрипт обработчик, код ниже
но яндекс не понимает кодировку и говорит что запрос был пустой, похоже это происходит во время передачи формы на сервер, хотя print $word; после передачи печатает слово правильно. если раскаментить строчку #$word="грузовые перевозки"; то всё будет работать, где что нужно поменять, чтобы яндекс понимал слово переданное из формы, есть ли какие-нибудь функции для смены кодировок, подозреваю, что нужно перевести в кодировку utf-8, библиотека iconv на моём сервере похоже не стоит.
код формы:
|
||||
|
|||||
| nitr |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
Надо сделать "валидный" урл
Это делает модуль URI::Escape, т.к. у вас кодировка windows-1251, то надо её в утф8 перевести Для решения: Satell, сделайте вот так 1) добавьте
2) затем замените строку на эту
|
||||
|
|||||
| Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск Репутация: 5 Всего: 57 |
Так в дополнение, сам в последнее время мучаюсь с проблемой кодировок и внимательно изучаю.
nitr, работа с модулем Encode хороший вариант. Только у меня стоит перл 5.8.6 и тут он начинает ругатся на недостаток каких-то модулей. Более сложный, но самый верный вариант это заранее знать в какой кодировке загружаемая страница в браузере(как правило в utf-8), после чего получать исходный текст в текущей кодировке и пропускать через функцию uri_escape того же модуля URI::Escape. Способ не простой, но 100%. И кстати, все же далеко не все сайты написаны в кодировке utf-8 -------------------- менеджер по кодеврайтингу |
|||
|
||||
| nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 37 Всего: 84 |
Bulat, у него для формирования запроса к поисковику Яндекса, это конкретика. А для парсинга страничек и т.п. вообще не эта тема, их кстати тоже очень много раз обсуждали, как и что парсить, обсуждали и автоопределение кодировок.
А в этой теме вообще не видно парсинга, у него ошибка в формировании ССЫЛКИ P.S.: Если у вас проблема с модулем Encode, то можете создать тему |
|||
|
||||
| Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск Репутация: 5 Всего: 57 |
Пасиба, я вообще-то научился решать проблемы и не прибегая к дополнительным модулям. Узнаешь много нового пока решаешь -------------------- менеджер по кодеврайтингу |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |