Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: smtp отправка писем

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
MadMike
Отправлено: 27 Августа, 2013 - 05:47:16
Post Id



Новичок


Покинул форум
Сообщений всего: 62
Дата рег-ции: Февр. 2010  
Откуда: Россия


Помог: 0 раз(а)

[+]


Настроил скрипт для отправки писем чз smtp. Все нормально работает, но не работают теги html. Хочу вставить в тело письма ссылку на файл на сервере.

Вот сам скрипт:

Спойлер (Отобразить)


Подскажите как сделать чтоб работало?

Или может можно файл сразу из формы взять и вставить в письмо?

(Отредактировано автором: 27 Августа, 2013 - 06:05:00)

 
 Top
armancho7777777 Супермодератор
Отправлено: 27 Августа, 2013 - 07:41:10
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




MadMike, а почему не воспользоваться функцией mail для отправки почты из php ?
 
 Top
MadMike
Отправлено: 27 Августа, 2013 - 08:26:33
Post Id



Новичок


Покинул форум
Сообщений всего: 62
Дата рег-ции: Февр. 2010  
Откуда: Россия


Помог: 0 раз(а)

[+]


armancho7777777 пишет:
MadMike, а почему не воспользоваться функцией mail для отправки почты из php ?


Все вроде разобрался с файлами и smtp.

Теперь кодировка гонит. Не понял Не понял
Файлы .doc с русским названием получают имя из кубиков(
Причем рисунки с русским названием нормально переводятся на транслит Не понял


Кусок с кодировками:

PHP:
скопировать код в буфер обмена
  1. $header="Date: ".date("D, j M Y G:i:s")." +0700\r\n";
  2. $header.="From: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode('TSPU-mail')))."?= <login@mail.ru>\r\n";
  3. $header.="X-Mailer: The Bat! (v3.99.3) Professional\r\n";
  4. $header.="Reply-To: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode('my-mail')))."?= <login@mail.ru>\r\n";
  5. $header.="X-Priority: 3 (Normal)\r\n";
  6. $header.="Message-ID: <172562218.".date("YmjHis")."@mail.ru>\r\n";
  7. $header.="To: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode('Сергей')))."?= <qwe@asd.ru>\r\n";
  8. $header.="Subject: =?windows-1251?Q?".str_replace("+","_",str_replace("%","=",urlencode('Тема письма')))."?=\r\n";
  9. $header.="MIME-Version: 1.0\r\n";
  10. $header.="Content-Type: multipart/mixed; boundary=\"----------A4D921C2D10D7DB\"\r\n";
  11.  
  12. $file=$way2;
  13. $fp = fopen($file, "rb");
  14. $code_file1 = chunk_split(base64_encode(fread($fp, filesize($file))));
  15. fclose($fp);
  16.  
  17. $text="------------A4D921C2D10D7DB
  18. Content-Type: text/plain; charset=windows-1251
  19. Content-Transfer-Encoding: 8bit
  20.  
  21. привет, это текст письма
  22.  
  23. ------------A4D921C2D10D7DB
  24. Content-Type: application/octet-stream; name=".$diplom."
  25. Content-transfer-encoding: base64
  26. Content-Disposition: attachment; filename=".$diplom."
  27.  
  28. ".$code_file1."";


Вообще убрать бы замену символов везде а то имя меняет. Я пытаюсь убрать эти функции, но тогда название письма тоже краказябрами становится(

(Отредактировано автором: 27 Августа, 2013 - 08:31:31)

 
 Top
akyl91
Отправлено: 28 Августа, 2013 - 16:19:13
Post Id



Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




Сам не проверял но тут вроде все расписано про smtp
http://www.php.su/articles/?cat=...ail&page=007

А в PHPMailer действительно намучаешься: то теги, то кодировка, то понос, то золотуха.

(Отредактировано автором: 28 Августа, 2013 - 16:21:13)



-----
akyl91@mail.ru
 
 Top
MadMike
Отправлено: 29 Августа, 2013 - 08:49:27
Post Id



Новичок


Покинул форум
Сообщений всего: 62
Дата рег-ции: Февр. 2010  
Откуда: Россия


Помог: 0 раз(а)

[+]


akyl91, я выше и привел код с этой страницы. )

только я имя файла после загрузки на сервер и перед тем как его открывать изменяю на корректное. иначе при открытии файла имя портится - либо расширение потеряешь либо кодировка.


и еще вопрос! как несколько адресатов указать?вот тут:
PHP:
скопировать код в буфер обмена
  1.  
  2. fputs($smtp_conn,"RCPT TO:<miqwen@mail.ru>\r\n");
  3. $code = substr(get_data($smtp_conn),0,3);
  4. if($code != 250 AND $code != 251) {print "Сервер не принял команду RCPT TO"; fclose($smtp_conn); exit;}


чз запятую чтот не работает.

(Отредактировано автором: 29 Августа, 2013 - 09:07:17)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB