PHP 메일()을 통해 HTML 메일을 보냅니다. 내용은 일부 div 컨테이너와 몇 가지 외부 이미지입니다.HTML 모바일 메일이 Apple 모바일 장치에서 "내용 없음"이됩니다.
iPhone 및 iPad와 같은 Apple 모바일 장치에서 메일 내용을 읽을 수 없으며 "이 메시지에는 내용이 없습니다"라는 메시지가 있습니다. 재미있는 점은 메일 앱의 미리보기 창에서 메일의 처음 몇 단어를 볼 수 있다는 것입니다. 적어도 그 내용은 거기에 있습니다. Google 웹 메일러에서 동일한 메일을 읽을 때 문제가 없습니다.
도와 주시겠습니까?
편집 : 요청한대로, 여기에 소스가 있습니다. $ mail은 값으로 HTML-mailbody를가집니다.
$id = md5(uniqid(time()));
$header= "From: Mailer <[email protected]>\n";
$header.= "Content-Type: multipart/mixed; boundary=".$id."\n";
$header.= "This is a multi-part message in MIME format\n";
$header.= "--".$id."\n";
$header.= "MIME-Version: 1.0\n";
$header.= "Content-type: text/html; charset=iso-8859-1\n";
$header.= "Content-Transfer-Encoding: 8bit\n";
$header.= $mail."\n";
$header.= "--".$id."--";
$betreff = mb_encode_mimeheader("subject", "UTF-8");
mail($mailaddress, $betreff, $mail, $header);
['multipart/alternative'] (http://en.wikipedia.org/wiki/MIME#Alternative) 메시지와 같이 들리지만, 도움을 요청하기 전에 코드를 보여야합니다. 이를 위해 [PHPMailer] (http://phpmailer.worxware.com/) 또는 [SwiftMailer] (http://swiftmailer.org/)와 같은 라이브러리를 사용해야하며, 잘 구성된 메시지를 구성하여 올바르게 전송해야합니다. 너와 너는 이런 문제를 겪지 않을 것이다. – DaveRandom
@dave 그들은 블랙 박스 (black-box)이기 때문에 도서관과는 조금 다릅니다 : 그들은 잘 작동하지만, 우리 대부분은 어떻게 해야할지 모릅니다. 그래서 나는 내 자신의 코드를 작성하고 내가 뭘 잘못했는지 알고 싶습니다. 나는 소스 코드를 추가했다. 아마도이 문제를 볼 수있을 것이다. – Phil
바로 그 하나의 이슈는 바로 저에게 충격을주었습니다. LF'\ n'뿐만 아니라 줄 분리에 대해서도 CRLF'\ r \ n'을 사용해야한다는 것입니다. 또한'$ mail' 데이터를 두 번 전달했습니다. 왜냐하면'mail()'에 전달할 때 헤더와 본문으로 전송했기 때문입니다. 나는 또한 많은 사람들이 시체를 헤더에 전달하는 것을 보지만, 그것은 나에게 어떤 의미가없는 것처럼 보인다. 첫 번째 두 줄 (CRLF로 구분)을 머리글에 넣은 다음 나머지 (CRLF로 구분)를 본문에 넣습니다. 나는 또한'MIME-Version : 1.0'을 헤더로 옮길 것이다. – DaveRandom