我在制作不同的邮件模板时遇到问题。当我收到发件人发送的电子邮件时,我想回复“谢谢”电子邮件给他或她。 Sametime我想将电子邮件详细信息作为不同类型的模板。
这是我的控制人
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>
电子邮件发件人可以接收“谢谢”电子邮件。网站管理员也可以接收电子邮件 但是标题和主题被覆盖为contacttext模板 有人可以教给我什么吗? 我认为将其用作网站站长模板将是很棒的。 我正在使用Laravel 5.6
答案 0 :(得分:1)
无法更改抄送或密件抄送的属性,因为这将使它成为抄送副本。如果您需要将副本发送到主题不同的替代地址,则需要将其作为单独的电子邮件发送:
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);
}
注意:由于邮件是从Laravel内部发送的,因此我使用config("mail")["from"]["address"]
作为发送地址。可以从config/mail.php
此外,为避免在发送响应到前端(来源)之前等待电子邮件发送,请将response()移到Mail::send()
函数之外。