Laravel 5 Laravel 5.6向和密件抄送不同主题和模板的邮件
我有一个问题,使不同的邮件模板。当我收到发件人的电子邮件时,我想回复一封“谢谢”的电子邮件给他或她。同时,我想得到不同类型的tempate的电子邮件详细信息 这是我的控制器Laravel 5 Laravel 5.6向和密件抄送不同主题和模板的邮件,laravel-5,Laravel 5,我有一个问题,使不同的邮件模板。当我收到发件人的电子邮件时,我想回复一封“谢谢”的电子邮件给他或她。同时,我想得到不同类型的tempate的电子邮件详细信息 这是我的控制器 class AjaxController extends Controller { public function send(Request $request){ $data = array( 'name'=>$request->name
class AjaxController extends Controller
{
public function send(Request $request){
$data = array(
'name'=>$request->name,
'email'=>$request->email,
'phone'=>$request->phone,
'messagetext'=>$request->message
);
Mail::send('contacttext', $data, function ($message) use ($request){
$to_email = "myemail@yahoo.co.jp"; // webmaster
$to_name = "webmaster";
$subject = "Thank you!";
$message->subject ($subject);
$message->from ($request->email, $request->name);
$message->to ($request->email, $to_name);
$message->bcc ('webmasteremail@yahoo.co.jp')
->from ($request->email, $request->name)
->subject ('for web master ');
if(count(Mail::failures()) > 0){
$status = 'error';
} else {
$status = 'success';
}
return response()->json(['response' => $status]);
}
}
contacttext.blade.php
<html>
<head>Thank you! here is your summary</head>
<body>
<p><strong>name:</strong> {{ $name }}</p>
<p><strong>email:</strong> {{ $email }}</p>
<p><strong>message:</strong> {{ $messagetext }}</p>
</body>
</html>
非常感谢。这是你的总结
名称:{{$name}
电子邮件:{{$email}
消息:{{$messagetext}
电子邮件发件人可以收到“谢谢”电子邮件。网站管理员也可以接收电子邮件
但标题和主题被覆盖为contacttext模板
有人能教我怎么回事吗?
我想这将是伟大的网站管理员模板。
我使用的是Laravel 5.6无法更改CC或BCC的属性,因为这将使它成为一个复写副本无效。如果您需要将副本发送到另一个主题不同的地址,您需要将其作为单独的电子邮件发送:
public function send(Request $request){
$data = array(
"name" => $request->name,
"email" => $request->email,
"phone" => $request->phone,
"messagetext" => $request->message
);
Mail::send("contacttext", $data, function ($message) use ($request){
$message->subject("Thank You!");
$message->to($request->email);
$message->from(config("mail")["from"]["address"]);
}
Mail::send("contacttext", $data, function ($message){
$message->subject("For Webmaster");
$message->to("webmasteremail@yahoo.co.jp");
$message->from(config("mail")["from"]["address"]);
}
return response()->json(["message" => "Email Sent!"], 200);
}
注意:我正在使用config(“mail”)[“from”][“address”]
作为发送地址,因为邮件是从Laravel内部发送的。可以从config/mail.php
另外,为了避免在向前端(源站)发送响应之前等待电子邮件发送,请将响应()移到
Mail::send()函数的外部 我认为您不能更改电子邮件抄送或密件抄送上的主题/发件人地址。蒂姆·刘易斯(Tim Lewis)谢谢你的回答,直接向网站管理员发送一封单独的电子邮件是不可能的。我明白了。那么,对于发件人和网站管理员来说,分离邮件的简单方法是什么呢?你能教我更多吗?我将对整个控制器进行复制并调整您的Mail::send()
代码段,使其仅发送给网站管理员。@Tim Lewis感谢您的快速响应。事实上,我在这里发帖之前就照你说的做了。它变为错误,发件人无法收到答复。等你能教我在哪里写代码吗?当然,我会发布答案的。我不确定是否要将return
放在Mail::send()函数中,但我会注意到这一点。非常感谢!你帮了我很多!我学到了很多东西,谢谢!谢谢你的好意!