Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: mailto и кодировка
 
 автор: GeorgeIV   (15.12.2010 в 14:52)   письмо автору
 
 

Столкнулся с такой хренью: требуется отправить некоторое кириллическое сообщение через mailto. Проблема в том, что в разных почтовиках разных ОС текст отображается по разному.
Есть ли универсальный метод, чтобы и под маком и под виндой7 текст читался?
В RFC информации по кодировке нет, urlencode не спасает.

  Ответить  
 
 автор: ride   (15.12.2010 в 15:21)   письмо автору
 
   для: GeorgeIV   (15.12.2010 в 14:52)
 

http://tools.ietf.org/html/rfc2368
upd
сам не пробовал

  Ответить  
 
 автор: sim5   (15.12.2010 в 15:52)   письмо автору
 
   для: GeorgeIV   (15.12.2010 в 14:52)
 

По разному это как?

  Ответить  
 
 автор: GeorgeIV   (15.12.2010 в 17:03)   письмо автору
 
   для: sim5   (15.12.2010 в 15:52)
 

вместо кириллицы квадратики и вопросики ии прочая хрень

  Ответить  
 
 автор: Trianon   (15.12.2010 в 15:57)   письмо автору
 
   для: GeorgeIV   (15.12.2010 в 14:52)
 

В RFC информация по кодировке есть - в RFC-2047.
Хотя в исходном 2368 имеется туманная фраза, что применять сей метод можно не для всех полей.
Другое дело, насколько полно отправляющий почтовик всё это реализует.
В общем, полагаться на такую неустойчивую конструкцию я бы не советовал - зависимости от чужой почтовой программы тут больше, чем от своей ОС..

  Ответить  
 
 автор: GeorgeIV   (15.12.2010 в 17:04)   письмо автору
 
   для: Trianon   (15.12.2010 в 15:57)
 

Таково ТЗ, если удастся убедить, что это невозможно, буду искать другой способ.

  Ответить  
 
 автор: Trianon   (15.12.2010 в 17:17)   письмо автору
 
   для: GeorgeIV   (15.12.2010 в 17:04)
 

ну а как тут убеждать?
Это ж надо рассматривать полный спектр Опереционок, почтовых программ, а может докучи и браузеров к ним.. То есть все комбинации переглядеть, и посмотреть, в каком виде отправляются письма. И не только посмотреть, но и показать автору ТЗ.

  Ответить  
 
 автор: lightning.say   (15.12.2010 в 17:09)   письмо автору
 
   для: GeorgeIV   (15.12.2010 в 14:52)
 

а функция mail для кодировки письма не подойдет?

$headers  = "Content-type: text/html; charset=windows-1251\n"; 
mail($to, $subject,$content,$headers ); 

  Ответить  
 
 автор: Trianon   (15.12.2010 в 17:13)   письмо автору
 
   для: lightning.say   (15.12.2010 в 17:09)
 

Очередное недержание, да?

Вроде и тема заявлена однозначно, и по сообщению видно всё.
Нет, нужно показать, что ты дартаньян , а все вокруг идиоты.

  Ответить  
 
 автор: GeorgeIV   (15.12.2010 в 17:26)   письмо автору
 
   для: Trianon   (15.12.2010 в 17:13)
 

Глянул в 2047, но мне кажется это не для mailto, по крайней мере непонятно, как это прицепить .

  Ответить  
 
 автор: Trianon   (15.12.2010 в 17:33)   письмо автору
 
   для: GeorgeIV   (15.12.2010 в 17:26)
 

2047 описывает методику кодирования строк на неанглийских языках :)
берете Ваш текст, преобразуете его по этой методике в utf-8/base64 , подставляете полученное в
=?UTF-8?B?сюда?=
а то что вышло, цепляете в виде значения параметра.
Только вот прокатит или нет - вопрос.

придется ли четверку вопросов урлкодировать дополнительно - тоже не скажу.

  Ответить  
 
 автор: GeorgeIV   (15.12.2010 в 17:51)   письмо автору
 
   для: Trianon   (15.12.2010 в 17:33)
 

не прокатывает, ни с урлкодированием, ни без

  Ответить  
 
 автор: Trianon   (15.12.2010 в 18:33)   письмо автору
 
   для: GeorgeIV   (15.12.2010 в 17:51)
 

ну вот значит обосновать еще легче.
Механизм не работает, потому что в плане кириллицы не поддержан клиентами.

  Ответить  
 
 автор: sim5   (15.12.2010 в 18:07)   письмо автору
 
   для: Trianon   (15.12.2010 в 17:33)
 

А откуда у клиента base64?

  Ответить  
 
 автор: Trianon   (15.12.2010 в 18:32)   письмо автору
 
   для: sim5   (15.12.2010 в 18:07)
 

а utf8 откуда? :)

  Ответить  
 
 автор: sim5   (15.12.2010 в 18:40)   письмо автору
 
   для: Trianon   (15.12.2010 в 18:32)
 

UTF он и в Африке UTF, а вот метода base64 в JS нет.

  Ответить  
 
 автор: Trianon   (15.12.2010 в 18:46)   письмо автору
 
   для: sim5   (15.12.2010 в 18:40)
 

base64 есть в RFC-2047, на который ссылается RFC-2368, который описыает mailto, который построил Джек

Что касается Африки, то надо думать utf и base64 там примерно на равных правах.

При чем тут JS - ващще не понял.

  Ответить  
 
 автор: sim5   (15.12.2010 в 19:05)   письмо автору
 
   для: Trianon   (15.12.2010 в 18:46)
 

При том, что нужно закодировать тему отправления, и коим образом, коли она коряво приходит, указать base64(тема), и кто это сделает? Поля отправляемой формы это иное. Кстати, mailto не поддерживается W3C, и браузеры делают это по собственной инициативе, и кто как может.

  Ответить  
 
 автор: Trianon   (15.12.2010 в 22:41)   письмо автору
 
   для: sim5   (15.12.2010 в 19:05)
 

>При том, что нужно закодировать тему отправления, и коим образом, коли она коряво приходит, указать base64(тема), и кто это сделает?
серверная сторона. Да и для JS функцию написать можно. Это как раз ерунда.
utf сформировать потруднее всяко., по-моему
Проблема в том, что оно всё равно переносимым образом не заработает.

  Ответить  
 
 автор: sim5   (16.12.2010 в 06:43)   письмо автору
 
   для: Trianon   (15.12.2010 в 22:41)
 

Можно конечно, и уже написано, как можно и utf сделать, но зачем, 1251 достаточно, если без изысков текст.

  Ответить  
 
 автор: lightning.say   (16.12.2010 в 03:56)   письмо автору
 
   для: Trianon   (15.12.2010 в 17:13)
 

я так не считаю, я пытаюсь помочь а не выставить кого-то идиотом.. вы как-то агрессивно реагируете на мои сообщения, успокойтесь товарисч! берегите нервы... все это мелочи

  Ответить  
 
 автор: sim5   (16.12.2010 в 06:44)   письмо автору
 
   для: lightning.say   (16.12.2010 в 03:56)
 

Так вы не вникаете в суть проблемы, и советуете бог весть что. Зачем?

  Ответить  
 
 автор: lightning.say   (16.12.2010 в 07:12)   письмо автору
 
   для: sim5   (16.12.2010 в 06:44)
 

ну если я в чем-то не прав - покажите чем, к чему эти эмоции? хз такое впечатление что тут все такие идеальномыслящие...

  Ответить  
 
 автор: sim5   (16.12.2010 в 07:22)   письмо автору
 
   для: lightning.say   (16.12.2010 в 07:12)
 

Речь идет о протоколе mailto, вопрос - какие могут быть header(....) и mail(....) ?
Кстати, $headers = "Content-type: text/html; charset=windows-1251\n"; для темы сообщения как с боку припеку.

  Ответить  
 
 автор: lightning.say   (16.12.2010 в 07:53)   письмо автору
 
   для: sim5   (16.12.2010 в 07:22)
 

ну вот, другой разговор...

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования