之前我没有使用过Laravel的邮件类,而且我在通过联系表单附加文件时遇到了一些麻烦。这就是我所拥有的:
public function mailer(){
$fromEmail = Input::get('email');
$fromName = Input::get('name');
$phone = Input::get('phone');
$subject = 'New Enquiry';
$contactMessage = Input::get('message');
$path = Input::get('files');
$data = array('name'=>$fromName, 'email'=>$fromEmail, 'comment'=>$contactMessage, 'phone' => $phone);
Mail::send('contactemail', $data, function($message) use ($fromEmail, $fromName, $subject, $path)
{
$message->to('stack-example@gmail.com', 'Enquiries');
$message->from($fromEmail, $fromName);
$message->subject($subject);
$message->attach($path);
});
}
它给我带来了错误:
fopen(stack-example-file.jpg):无法打开流:没有这样的文件或目录
Mailer的功能应该没有附件。关于我哪里出错的任何想法?
答案 0 :(得分:0)
<强>解决强>
我有
Input::file('files');
而不是
enctype="multipart/form-data"
导致字符串而不是文件对象。我还从刀片模板转换为vanilla html for form标签,忘了添加
'files' => true
替换
{{1}}
文件对象因此为空,因此无法连接。