curl и кодировка страниц

Статус
В этой теме нельзя размещать новые ответы.

L_D

Создатель
Регистрация
20 Авг 2007
Сообщения
37
Реакции
3
Здравствуйте.
Тягаю с помощью curl определенную инфу по базе определенной CMS. Примерно так:

PHP:
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
$result1 = curl_exec($ch); 
curl_close($ch);

Всё бы хорошо, но мой скрипт в кодировке cp1251, и с сайтами аналогичной кодировке работает отлично, но повстречав utf8 - выдаёт каракули, и напроч отказывается отправлять корректные post данные...
Подскажите пожалуйста, как заставить парсер верно определять и подстраиватся под кодировку сайта.
 
Пробовал, канечно же( Результат - либо вообще никакого, либо возвращает пустую строку... Пытаюсь конвертить всю страницу полностью, возможно, чтото упускаю?
 
Ну тут вот есть определение кодировки



Т.е. кодировка берется либо из meta, либо из http. Пример сразу прикручен к curl.

А кодировку пишешь как Windows-1251 или как иначе?
И поставь вывод ошибок error_reporting(E_ALL) может дельный совет тебе покажет.
 
  • Нравится
Реакции: L_D
Всё решилось с помощью параметра //IGNORE в iconv.
PHP:
$result = iconv("UTF-8","windows-1251//IGNORE", $result);
Функция ругалась на недопустимые символы, именно поэтому выдавался пустой результат.

antidote, спасибо за мотивацию продолжить копать в сторону iconv)
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху