Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Отправка письма с аттачем на PHP

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2

Открыть новую тему     Написать ответ в эту тему

AnDron85



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ну а я кажется разобрался :)
Вобщем код нижней части скрипта: (понимаю ламерский подход но главное работает!)

Цитата:
 
$filename="01.gif";  //сам файл
$fd = fopen($filename, "r");
$data = fread($fd, filesize($filename));
fclose($fd);
 
$filename2="02.gif";    //сам файл
$fd2 = fopen($filename2, "r");
$data2 = fread($fd2, filesize($filename2));
fclose($fd2);
 
$mail = new mime_mail;
$mail->from="от меня";   // от кого
$mail->to="тебе";     // кому
$mail->subject = "тема";    //тема
$mail->body="hello user!<br />привет Юзер!";  // "Attachment"; //тело
$mail->add_attachment($data, $filename);
$mail->add_attachment($data2, $filename2);
$mail->send();
 
Ну а чтобы отправлялось в HTML надо немного подправить эту строчку:
Цитата:
            $this->add_attachment($this->body, "", "text/plain");  

Изменить её на эту:

Цитата:
$this->add_attachment($this->body, "", "text/html");  


Всего записей: 42 | Зарегистр. 28-01-2005 | Отправлено: 08:32 15-02-2007
AnDron85



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
а у меня еще вопрос, письмо приходит в HTML формате, при просмотре в the bat все нормально, а когда просматриваешь через веб-интерфейс (mail.ru), то там кодировка не верная, может кто подскажет как это исправить?

Всего записей: 42 | Зарегистр. 28-01-2005 | Отправлено: 14:05 21-02-2007
Delphi6



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnDron85
А вы принудительно указываете как энкодинг надо использовать при отображении текста?  

Цитата:
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

 
Как я помню The Bet это делает автоматом (пытается отгадать) а вот браузеры нет. И данное происходить во всех браузерах или в определенном?

Всего записей: 2631 | Зарегистр. 06-07-2004 | Отправлено: 15:45 21-02-2007
Yarkij



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
в хедере письма толком передается кодировка?

Всего записей: 111 | Зарегистр. 21-02-2005 | Отправлено: 18:33 21-02-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Delphi6

Цитата:
А вы принудительно указываете как энкодинг надо использовать при отображении текста?  

бррр... в почте важно какая кодировка указана в заголовках письма.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:17 21-02-2007
Delphi6



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
Разве HTML письмо не идет атачментом? У меня в The Bet именно так и отображается Вот я и логически решил, раз идет как html файл, значит можно указать кодировку именно в теле (где сам html файл) и тогда все корректно будет работать.

Всего записей: 2631 | Зарегистр. 06-07-2004 | Отправлено: 19:28 21-02-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Delphi6

Цитата:
Разве HTML письмо не идет атачментом?  

отображается.. но не идет..

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:29 21-02-2007
Delphi6



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
Ок, тогда возможно вы правы. Хотя я так предполагаю что на страничке некорректно отображается по той причине что mail.ru мыла пришедшее в виде html отображает как и The Bat в виде атачмента. А если это так, то при нажатии на него, оно открывается и автоматом теряется кодировка указанная в header-е письма. Возможно я где-то что-то не досмотрел, но по идее должно быть так

Всего записей: 2631 | Зарегистр. 06-07-2004 | Отправлено: 19:35 21-02-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Delphi6

Цитата:
Хотя я так предполагаю что на страничке некорректно отображается по той причине что mail.ru мыла пришедшее в виде html отображает как и The Bat в виде атачмента.

бр.. почтовики нормально отображают html письмо именно как html страницу сразу..
если посмотришь те htmlи, что в письмах.. там нет ни head ни body.. сразу идет html код текста

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:36 21-02-2007 | Исправлено: Cheery, 20:09 21-02-2007
AnDron85



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Как я помню The Bet это делает автоматом (пытается отгадать) а вот браузеры нет. И данное происходить во всех браузерах или в определенном?

 
проверено в Музиле и IE, результат один и тотже, в коде посмотрел, и честно сказать не знаю что менять...  
Я понимаю, что где-то надо проставить кодировку, пока не знаю где.

Всего записей: 42 | Зарегистр. 28-01-2005 | Отправлено: 19:59 21-02-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnDron85

Цитата:
Я понимаю, что где-то надо проставить кодировку, пока не знаю где.

пробуй так
 $this->add_attachment($this->body, "", "text/html;charset=windows-1251");  

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:13 21-02-2007 | Исправлено: Cheery, 20:13 21-02-2007
AnDron85



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
пробуй так
 $this->add_attachment($this->body, "", "text/html;charset=windows-1251");  

Спасибо! заработало как надо!!!

Всего записей: 42 | Зарегистр. 28-01-2005 | Отправлено: 20:27 21-02-2007
PEDKA



Улыбающийся КС
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не получается вставить картинку в html письмо.
Вот скрипт
В письме вставляю картинку так:

Код:
 
<img src=\"cid: logo.jpg\" alt=\"\" />
 

 
В Outlook Express 6 картинка отображается нормально, а вот в Bat или Outlook (офисный) картинка является аттачем. В месте, где вставил картинку — крестик (не отображается картинка).
Нужно, чтобы картинка вставлялась нормально в текст сообщения. Как поправить код?
 
Добавлено
Вопрос снят. Разобрался.
Готовая функция для отправки письма с картинкой. Пример применения

----------
вот такая вот батва ©...
"Тестирование" это давно уже не помойка.
"Тестирование" это филиал "Помощи" ©

Всего записей: 15962 | Зарегистр. 04-05-2003 | Отправлено: 20:37 05-03-2007 | Исправлено: PEDKA, 11:35 06-03-2007
b0d

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
спасибо большое!
это единственное рабочее решения которое нашел в инете которое использует штатную функцию mail(). Сокеты меня не устраивают ибо на современных смтпшниках юзается авторизация реализовывать которую на пхп гемор.

Всего записей: 30 | Зарегистр. 23-12-2007 | Отправлено: 14:05 20-06-2008
Ternik



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
PEDKA
Content-Disposition: inline; filename="
 
и CID по спецификации должен быть уникален для всего мира =))
 
При этом, все вложенные файлы в HTML должны быть в его Content-Disposition и иметь свой уникальный Content-Disposition определяемый во вложении этого хтмл.
 
Добавлено:
Готовый класс для создания писем

Всего записей: 763 | Зарегистр. 25-09-2002 | Отправлено: 17:09 20-06-2008
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2

Компьютерный форум Ru.Board » Интернет » Web-программирование » Отправка письма с аттачем на PHP


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru