1С-Битрикс — простая отправка почты с вложением

28.11.2019  09:46

1С-Битрикс — простая отправка почты с вложением (attachment). Тут всё просто, единственная особенность — перед отправкой файл надо сохранять в базу (в медиабиблиотеку), а чтобы там не плодить хлам — после отправки письма — удалять.

//поля почтового шаблона:
$arEventFields = array(
	"AUTHOR" => $arProp["AUTHOR"],
	"EMAIL" => $email,
);
$sPath = $_SERVER["DOCUMENT_ROOT"].'/upload/file.pdf';//путь до файла
$iFileId = CFile::SaveFile(CFile::MakeFileArray($sPath), "main");//сохраняем в базу
CEvent::SendImmediate(
	'PRICE_SEND',
	SITE_ID,
	['EMAIL' => $email],
	'Y',
	'',
	[$iFileId]
);//собственно отправка письма с вложением
// unlink($sPath);//удаляем файл, если он больше не нужен
if ($iFileId) {
	CFile::Delete($iFileId);//удаляем из базы, там он точно не нужен
}


Всё! За attach файлов отвечает 6-й ключ методов CEvent::SendImmediate и CEvent::Send. Разница между этими методами, что первый отработает сразу, а второй пошлёт письмо только когда выполнится агент.
Андрей Панёвин
Здравствуйте! Я — Андрей Панёвин и занимаюсь профессиональной разработкой сайтов на платформе 1С-Битрикс (исключительно программирование). Есть вопросы по статье? Могу подсказать и помочь по скайпу (andrey.panevin.ru), WhatsApp (+7-911-091-0670) или перепиской в ВК.
1000 р./час.






Помогла статья? На поездку на море (Охотское):


перейти в Блог

Ударим лайками по бездорожью, разгильдяйству и бюрократизму!


Ключевые слова (тэги): 1С-Битрикс 58  PHP 72  web-программирование 96  

Вам есть что сказать — ну я же чую.
Высказаться о наболевшем, я выслушаю-:
Имя


email (не публикуется)