我在過去的兩年中一直使用FPDF來生成PDF文件。在生成這個文件後,它會通過電子郵件發送給我。我最近在新服務器上安裝了完全相同的腳本。由於一個或其他原因,PDF的生成工作,因爲我沒有得到一個錯誤信息。我收到的電子郵件消息是連勝文,看起來像:FPDF爲電子郵件生成的附件由奇怪的字符組成
--4aca5942d8bd7e7d523d8b2d71c6b1ea-- 或 --d7582bf6769dd1fa2ee8f05cb04cf445--
每個消息都是不同的。
的剝離代碼:
require('class.phpmailer.php');
require('fpdf.php');
define('FPDF_FONTPATH','font/');
//Create new PDF
$pdf=new PDF();
$pdf->AliasNbPages();
$pdf->company = $business;
$pdf->SetFont('Arial','',12);
$pdf->SetAutoPageBreak(false);
$pdf->AddPage('P');
// email stuff
$tijd = time();
$datum = date('j-m-Y', $tijd);
$bestandsnaam = $usernameinlog."-".$datum;
$from = "[email protected]".$website;
$subject = "Voorraad mutatie door ".$usernameinlog;
$message = "<p>Zie bijlage voor een mutatieoverzicht.</p>";
// a random hash will be necessary to send mixed content
$separator = md5(time());
// carriage return type (we use a PHP end of line constant)
$eol = PHP_EOL;
// attachment name
$filename = $bestandsnaam.".pdf";
// encode data (puts attachment in proper format)
$pdfdoc = $pdf->Output("", "S");
$attachment = chunk_split(base64_encode($pdfdoc));
// main header (multipart mandatory)
$headers = "From: ".$from.$eol;
$headers .= "MIME-Version: 1.0".$eol;
$headers .= "Content-Type: multipart/mixed; boundary=\"".$separator."\"".$eol.$eol;
$headers .= "Content-Transfer-Encoding: 7bit".$eol;
$headers .= "This is a MIME encoded message.".$eol.$eol;
// The actual message
$headers .= "--".$separator.$eol;
$headers .= "Content-Type: text/html; charset=\"iso-8859-1\"".$eol;
$headers .= "Content-Transfer-Encoding: 8bit".$eol.$eol;
$headers .= $message.$eol.$eol;
// Bijlage
$headers .= "--".$separator.$eol;
$headers .= "Content-Type: application/octet-stream; name=\"".$filename."\"".$eol;
$headers .= "Content-Transfer-Encoding: base64".$eol;
$headers .= "Content-Disposition: attachment".$eol.$eol;
$headers .= $attachment.$eol.$eol;
$headers .= "--".$separator."--";
mail($emailemployee, $subject, "", $headers);
有誰知道什麼錯誤,我失去了在php.ini參數? 再一次:這個相同的代碼在不同的服務器上工作,所以我認爲一些設置是錯誤的,或者我忘了安裝一些東西。
:-)謝謝,
亞歷
它看就像一些哈希值 - 你可以發佈一些代碼?像PDF生成或電子郵件發送片段。 – maialithar 2012-02-08 15:42:18
我加了上面的代碼來澄清! – 2012-02-08 18:08:39