Кодировка при парсинге

Тема в разделе "PHP", создана пользователем phillip, 13 авг 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. phillip

    phillip

    Регистр.:
    4 сен 2007
    Сообщения:
    413
    Симпатии:
    15
    Пробую парсить рес, с кодировкой траблы. Подскажите что делать. Постоянно у меня с кодировками косяки, хз как справляться то. В .htaccess прописано AddDefaultCharset windows-1251, в заголовке страницы тоже указано windows-1251. Что еще то надобно:bc:

    PHP:
    <?
     
    $agent 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU; rv:1.7.12) Gecko/20050919 Firefox/1.0.7'
        
    $header[] = "Accept: text/html;q=0.9, text/plain;q=0.8, image/png, */*;q=0.5" 
        
    $header[] = "Accept_charset: windows-1251, utf-8, utf-16;q=0.6, *;q=0.1"
        
    $header[] = "Accept_encoding: identity"
        
    $header[] = "Accept_language: en-us,en;q=0.5"
        
    $header[] = "Connection: close"
        
    $header[] = "Cache-Control: no-store, no-cache, must-revalidate"
        
    $header[] = "Keep_alive: 300"
        
    $header[] = "Expires: Thu, 01 Jan 1970 00:00:01 GMT"

        
    $ch curl_init();  
        
    curl_setopt($chCURLOPT_URL'http://www.psylive.ru/main/gl3.aspx?pg=1'); 
        
    curl_setopt($chCURLOPT_HEADER1); 
        
    curl_setopt($chCURLOPT_FOLLOWLOCATION1); 
        
    curl_setopt($chCURLOPT_RETURNTRANSFER,1);  
        
    curl_setopt($chCURLOPT_TIMEOUT10); 
        
    curl_setopt ($chCURLOPT_SSL_VERIFYPEERFALSE);  
        
    curl_setopt $ch CURLOPT_USERAGENT $agent); 
        
    curl_setopt $ch CURLOPT_HTTPHEADER $header); 
        
    $result curl_exec($ch); 
        
    curl_close($ch); 

        
    print_r($result);
    ?>

     
  2. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    htacsess не при чем , он устанавливает кодировку при обращении к ТВОЕМУ сайту

    читай про iconv() и юзай ее для $result
     
    phillip нравится это.
  3. phillip

    phillip

    Регистр.:
    4 сен 2007
    Сообщения:
    413
    Симпатии:
    15
    $result = iconv('windows-1251','UTF-8',$result);

    добавил так, заработало. раньше вроде тоже пробовал, не вкатывало... наверно ошибся где-то... спасибо
     
  4. webmikestudio

    webmikestudio Создатель

    Регистр.:
    24 янв 2009
    Сообщения:
    16
    Симпатии:
    0
    Ну и в скрипте не забывать уточнять кодировку:
    header("Content-Type: text/plain; charset=Windows-1251");
     
Статус темы:
Закрыта.