Я отредактировал этот скрипт для работы с тем, для чего он мне нужен, он все равно отправляет, как должен — хотя все, что я получаю, это «Body» $message
а потом множество случайных букв, которые продолжаются вечно …
Я понятия не имею, что я могу делать неправильно, но есть несколько вещей, которые вы должны знать …
$photo
это что-то вроде: SOTT_photos/Plymouth/290416/unio/a290416789.JPG
Поэтому я не могу получить только имя изображения, поэтому я использовал Myphoto.jpg
хотя я не вижу, что вызывает такую ошибку?
Фотографии также могут быть в формате JPG, JPG, PNG, PNG и т. Д. Поэтому мне нужно кое-что рассмотреть для всех тех типов изображений, которые могут быть написаны с большой буквы или нет.
$subject = 'My SmileontheTiles Photo!';
$from = '[email protected]';
$body = $message;
$photoPath = $photo;
$photoName = 'Myphoto.jpg';
$filetype = 'image/JPG';
$bound_text = md5(uniqid(rand(), true));;
$bound = "--" . $bound_text . "\r\n";
$bound_last = "--" . $bound_text . "--\r\n";
$headers = "From:" . $from . "\r\n". "MIME-Version: 1.0\r\n". "Content-Type: multipart/mixed; boundary=\"$bound_text\"";
$message = "Sorry, your client doesn't support MIME types.\r\n". $bound;
$message .= "Content-Type: text/html; charset=\"iso-8859-1\"\r\n". "Content-Transfer-Encoding: 7bit\r\n\r\n". $body
. $bound;
$file = file_get_contents($photoPath);
$message .= "Content-Type: $filetype; name=\"$photoName\"\r\n". "Content-Transfer-Encoding: base64\r\n". "Content-disposition: attachment; file=\"$photoName\"\r\n". "\r\n". chunk_split(base64_encode($file))
. $bound_last;
mail($emails, $subject, $message, $headers);
Я не вижу, что здесь может пойти не так, но, может быть, кто-то другой может мне помочь?
П.С. — Я знаю, что дополнительные заголовки в настоящее время представляют угрозу безопасности, хотя я не уверен, как это компенсировать?
Задача ещё не решена.
Других решений пока нет …