PHPのメールを使用して添付ファイルとしてエクセル:送信PHPは、私は次のことを持っている
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
ob_start();
$objWriter->save("php://output");
$xlsData = ob_get_contents();
$xlsData1= "data:application/vnd.ms-excel;base64,".base64_encode($xlsData);
ob_end_clean();
//Require for mailing functionality
require_once('../../PHPMailer/PHPMailer-master/class.phpmailer.php');
//Send mail function
$mail= new PHPMailer(); // defaults to using php "mail()"
$sender ="emailadddress";
$mail->SetFrom($sender);
$mail->AddAddress('emailaddress');
$mail->Subject="Combined repair and production report from ".$reportDate;
$encoding = "base64";
//$type = "image/png";
$mail->AddStringAttachment(base64_decode($xlsData1), "combined_report".$reportDate."xlsx");
//$mail->AddAttachment($xlsData, $filename);
$message= "Please see attached combined report";
$message = "</body></html>";
$mail->MsgHTML($message);
if(!$mail->Send())
{
$response = array(
'op' => 'failed',
'file' => "data:application/vnd.ms-excel;base64,".base64_encode($xlsData)
);
}
else
{
$response = array(
'op' => 'ok',
'file' => "data:application/vnd.ms-excel;base64,".base64_encode($xlsData)
);
}
die(json_encode($response));
pg_close($conn);
これはattachemntを電子メールで送信しますが、添付ファイルは空のファイルです。私はそれを保存しようとすると、ファイル名とこのような拡張子があります: "filenamexlsx"ので、正しいxlsx形式を取得していないようです。私もこれを試してみました:私も試してみました
$mail->AddStringAttachment("data:application/vnd.ms-excel;base64,".base64_encode($xlsData);
:
$encoding = "base64";
$type = "application/vnd.ms-excel"; // and :application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
$mail->AddStringAttachment(base64_decode($xlsData1), "combined_report".$reportDate."xlsx",$encoding,$type);
は、私はまた、代わりに、文字列の添付ファイルのAddAttachment()
を使用してみましたし、私はそれを行う電子メールには添付ファイルがありません。 php send e-mail with attachment
をしてもPHPMailer, AddStringAttachment and Data URI Scheme
のようにそこに複数のものを見てきましたが、理解されるであろう任意のヘルプを:(働いているように見えるdoesntの
'$ reportDate。" xlsx "'は '$ reportDate 'にする必要があります。xlsx" –
あなたの回答は私の答えとして受け入れられませんでした。申し訳ありませんが私はちょっとquesitons等を投稿すると新しいです – cocopan
あなたはなぜ私はまだファイルが壊れているというエラーを取得する知っているだろうか?他のエラーを見つけられるように助けてくれますか? – cocopan