Я использую mailgun api для отправки писем. Моя версия php 5.3
Я должен прикрепить файлы, которые не являются данными multipart / form. Я имею в виду, что у меня есть абсолютные пути к файлам, так как я могу отправлять вложения через Curl php?
Я видел почтовый документ. Я нашел это:
Файл вложения. Вы можете опубликовать несколько значений вложений. Важное замечание: При отправке вложений необходимо использовать кодировку multipart / form-data.
Но у меня только абсолютных путей нет multipart/form data
, Так как я могу прикрепить сейчас?
Добавление заголовков как:
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-type: multipart/form-data"));
Вот мой входной массив, отправляемый через mailgun API:
Array (
[от] => XYZ[to] => [email protected] [subject] => ryreyreyre [text] => yreyreyreyreyre<br /> <br />Sincerely,<br />xyz [html] => yreyreyreyreyre<br /> <br />Sincerely,<br />xyz [attachment] => Array ( [0] => @/var/www/vhosts/download/attachment/1418034032618discover.png [1] => @/var/www/vhosts/download/attachment/1418034032395master.png [2] => @/var/www/vhosts/download/attachment/1418034032208visa.png )
)
Вот моя просьба
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, 'api:'.MAILGUN_APIKEY);
if(!empty($postArr['attachments']))
{
curl_setopt ($ch, CURLOPT_VERBOSE, 0);
curl_setopt ($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-type: multipart/form-data"));
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_URL, 'https://api.mailgun.net/v2/'.MAIL_VIA_DOMAIN.'/messages');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postArr);
$http_status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$result = curl_exec($ch);
curl_close($ch);
почта отправляется на мой почтовый ящик, но я не получаю вложения. глядя на логи также говорит, что вложения пустые
Задача ещё не решена.
Других решений пока нет …