我需要从联系表单发送文件(pdf)到电子邮件。
现在我可以发送一个空的pdf文件。
这是我控制器中的代码。谢谢!
_F23_C456
_F345_C1
答案 0 :(得分:2)
要附加文件,您可以使用以下选项:
// Attach a file from location
$message->attach($pathToFile, array $options = []);
// Attach a file from a raw $data string...
$message->attachData($data, $name, array $options = []);
请参阅以下链接: Sending a file via form to email with Laravel (Localhost)
答案 1 :(得分:1)
现在它正常运作。
我改变了
$message->attachData($data['document'], $data['document']->getClientOriginalName());
通过
$message->attach( $data['document']->getRealPath(), [
'as' => $data['document']->getClientOriginalName(),
'mime' => $data['document']->getMimeType()
]);
答案 2 :(得分:-1)
您使用的是PHPMailer吗?
使用PHPMailer:
从此处下载PHPMailer脚本:http://github.com/PHPMailer/PHPMailer
提取存档并将脚本文件夹复制到方便的位置 放在你的项目中。
包含主脚本文件 - require_once('路径/到/文件/ class.phpmailer.php&#39);
设置标题:
$header .= "Content-Type: application/octet-stream; name=\"".$filename."\"\r\n";
$header .= "Content-Transfer-Encoding: base64\r\n";
$header .= "Content-Disposition: attachment; filename=\"".$filename."\"\r\n\r\n";
另外:PHPMailer,提供此功能,
$email = new PHPMailer();
$file_to_attach = 'filepath';
$email->AddAttachment($file_to_attach , 'filename + file extension');
$email->Send();