Перейти к содержимому

Реферальная программа Мегаплана

Партнерская программа Kredov

Imap заголовки

#1 gaaarfild

gaaarfild
  • Пользователь
  • 596 сообщений
  • Репутация: 0
0

Отправлено 24 Ноябрь 2010 - 21:56

Я соединяюсь со своим почтовым ящиком.
И далее достаю заголовки функцией imap_fetch_overview();
полученные заголовки я кодирую в UTF-8 функцией imap_utf8();
Но часть заголовков, напhимер приходящие от mail.ru? выглядят так

"=?WINDOWS-1251?Q?=CC=EE=E9_=CC=E8=F0=40MAIL.RU?="

А некоторые так:

=?UTF-8?B?0KTQVTGA0YPQVNGLINC00LVRJYDQSTC10LET0LZQSNGB0YLQTDGA0LA6INC00LJQT9CW0LNQVSWGC2VV
LCDQSTC10LET0L/RGNC+0LPRGNCW0LZQVNC40YDQVTCY0LDQVDC40LU=?=

И еще вот так:

������� ����


Мои скрипты в кодировке UTF-8.


Как заставить все заголовки отображаться правильно?
Заранее спасибо.

 

 

  • 0

#2 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 25 Ноябрь 2010 - 22:19

gaaarfild, может mail отдаёт заголовки в кодировке koi8r?
В данном случае заголовками является тема письма или заголовки письма?
  • 0

#3 gaaarfild

gaaarfild
    Topic Starter
  • Пользователь
  • 596 сообщений
  • Репутация: 0

Отправлено 25 Ноябрь 2010 - 23:55

Заголовок - это ассоциативный массив. Тема содержится в элементе с ключом Subject. Отправитель - From и так далее.
  • 0

#4 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 26 Ноябрь 2010 - 23:06

gaaarfild, такие кракозябры выводятся после обработки функцией imap_utf8()?
И знаешь ли ты, какими должны быть данные заголовки в реалии (чтобы прояснить немного, что должно быть)?
  • 0

#5 gaaarfild

gaaarfild
    Topic Starter
  • Пользователь
  • 596 сообщений
  • Репутация: 0

Отправлено 29 Ноябрь 2010 - 13:26

да. Я еще делал imap_encode_mime_headers(); Большинство исправилось. Но вот некоторые остались такими

Íîâûå ôèëüìû íà

или такими

=?win-1251?B?yOzv5fDo/yDq6O3u?=

Один не раскодировался, а другой - стал кракозяброй.
  • 0

#6 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 29 Ноябрь 2010 - 14:40

Вообщем есть такой удобный декодер от лебедева, покажет тебе исходную кодировку:
http://www.artlebede.../tools/decoder/

Твой текст:

Новые фильмы на

в кодировке windows-1252 для западноевропейских языков, почему он не переводится в utf-8 сказать не могу, но перекодировать можно. Советую тебе найти скрипт определения кодировки, и по условию, если кодировка 1252, то с помощью скрипта перекодировщика(который опять же надо найти) перекодировать в utf-8.
Декодер преобразовал: Новые фильмы на -> Новые фильмы на

Строку:

=?win-1251?B?yOzv5fDo/yDq6O3u?=

декодер определил как base64-закодированную (частично), в начале идёт кодировка, в которой находится закодированная строка
Декодер преобразовал: yOzv5fDo/yDq6O3u?= -> Империя кино?. Я так понял, знаки вопроса тут - это разделители между кодировкой и закодированным текстом.

Как я успел посмотреть, тема письма чаще всего приходит base64-закодированная, особенно если имеется национальная кодировка (посмотри на картинки). Так что, не всё так просто :)
  • 0


Оформление форума – IPBSkins.ru