2015-01-16 1 views
2
    TCPDF
  • 생성 된 PDF이 제공 적절한 출력 할 때 열어 직접 브라우저
  • 시도가 로컬 컴퓨터에 메일 대신에 다운로드를 보낼에, 처음 발생했을 때 적절하게 열림
  • 썬더 버드에서 다른 사용자에게 메일을 전달하면 해당 파일이 손상되어 메시지 표시 : "지원되지 않는 파일이므로 Adobe Reader에서 'nsmail-3.pdf'를 열 수 없습니다. 파일이 손상 되었기 때문에 을 입력하십시오 (예 : sen t는 이메일 첨부 파일로서 올바르게 디코딩되지 않았습니다). " 메일을 보낼 수

샘플 코드는PDF 파일/전망

입니다
$fileName = 'output.pdf'; 
$fileatt = $pdfObj->Output('output.pdf', 'E'); 
$attachment = chunk_split($fileatt); 

$eol = PHP_EOL; 
$separator = md5(time()); 
$headers = 'From: Sender <[email protected]>'.$eol; 
$headers .= 'MIME-Version: 1.0'.$eol; 
$headers .= 'Content-Type: multipart/mixed; boundary="'.$separator.'"'; 

$mailMessage .= '--'.$separator.$eol; 
$mailMessage .= 'Content-Type:text/html;Charset=ISO-8859-1'.$eol; 
$mailMessage .= 'Content-Transfer-Encoding: 8bit'.$eol.$eol; 
$mailMessage .= 'message content text'.$eol; 

$eol = "\r\n"; 
$mailMessage .= '--'.$separator.$eol; 
$mailMessage .= 'Content-Type: application/pdf; name="'.$fileName.'"'.$eol; 
$mailMessage .= 'Content-Transfer-Encoding: base64'.$eol; 
$mailMessage .= 'Content-Disposition: attachment; filename='.$fileName.$eol; 
$mailMessage .= $attachment.$eol; 
$mailMessage .= '--'.$separator.'--'; 
mail('[email protected]', $toEmailid, $subject, $mailMessage, $headers); 
나는 위의 코드에서 잘못된 어딘지

사람이 제안 할 수 있습니다? 또는 그 썬더 버드 또는 Outlook 관련 문제가 있습니까?

답변

1
  • 중고 대체 솔루션은 메일 보낸 후 서버에서 파일을 삭제, 첨부 파일과 함께 이메일을 보내 서버에 메일 저장 파일에서 PDF 파일을 보낼 수 있습니다.

샘플 코드

$fileName = 'output.pdf'; 
$fileatt = $pdfObj->Output(SERVERPATH.'/output.pdf', 'F'); 

$filename = 'output.pdf'; 
$file = $naTmpPath.'/'.$filename; 
$file_size = filesize($file); 
$handle = fopen($file, "r"); 
$content = fread($handle, $file_size); 
fclose($handle); 
$attachment = chunk_split(base64_encode($content)); 

$eol = PHP_EOL; 
$separator = md5(time()); 
$headers = 'From: Sender <[email protected]>'.$eol; 
$headers .= 'MIME-Version: 1.0'.$eol; 
$headers .= 'Content-Type: multipart/mixed; boundary="'.$separator.'"'; 

$mailMessage .= '--'.$separator.$eol; 
$mailMessage .= 'Content-Type:text/html;Charset=ISO-8859-1'.$eol; 
$mailMessage .= 'Content-Transfer-Encoding: 8bit'.$eol.$eol; 
$mailMessage .= 'message content text'.$eol; 

$eol = "\r\n"; 
$mailMessage .= '--'.$separator.$eol; 
$mailMessage .= 'Content-Type: application/pdf; name="'.$fileName.'"'.$eol; 
$mailMessage .= 'Content-Transfer-Encoding: base64'.$eol; 
$mailMessage .= 'Content-Disposition: attachment; filename='.$fileName.$eol; 
$mailMessage .= $attachment.$eol; 
$mailMessage .= '--'.$separator.'--'; 
mail('[email protected]', $toEmailid, $subject, $mailMessage, $headers); 
관련 문제