在我的应用程序中,我可以向单个用户发送电子邮件! 但我想从一个表单同时发送给多个用户!
我的班级
class SendEvent extends Mailable {
use Queueable, SerializesModels;
public $data;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($data) {
$this->data = $data;
}
/**
* Build the message.
*
* @return $this
*/
public function build() {
return $this->markdown('emails.eventEmail');
}
}
这是下面的 send()
函数。
我的控制器
class EmailController extends Controller {
public function send(Request $request) {
$homeUrl = url('/');
$eventId = $request->get('event_id');
$eventTitle = $request->get('event_title');
$eventUrl = $homeUrl.'/'.'events/'.$eventId.'/'.$eventTitle;
$data = array(
'your_name'=>$request->get('your_name'),
'your_email'=>$request->get('your_email'),
'friend_name'=>$request->get('friend_name'),
'eventUrl'=>$eventUrl
);
$emailTo = $request->get('friend_email');
Mail::to($emailTo)->send(new SendEvent($data));
return redirect()->back()->with('message','Event link sent to '.$emailTo);
}
}
在收件人地址表单中,我只能添加一个地址!
我在模型中的表单
<form action="{{route('mail')}}" method="POST">@csrf
<div class="modal-body">
<input type="hidden" name="event_id" value="{{$event->id}}">
<input type="hidden" name="event_title" value="{{$event->title}}">
<div class="form-goup">
<label>Your name * </label>
<input type="text" name="your_name" class="form-control" required="">
</div>
<div class="form-goup">
<label>Your email *</label>
<input type="email" name="your_email" class="form-control" required="">
</div>
<div class="form-goup">
<label>Person name *</label>
<input type="text" name="friend_name" class="form-control" required="">
</div>
<div class="form-goup">
<label>Person email *</label>
<input type="email" name="friend_email" class="form-control" required="">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Mail this event</button>
</div>
</form>
如何让我的代码从表单发送到多个电子邮件地址?
答案 0 :(得分:0)
我认为您可以通过将 $friend_name 设为数组来解决此问题
<input type="email" name="friend_email[]" class="form-control" required="">
然后您可以添加一个 js 函数来附加此输入以获取更多电子邮件 类似的东西
$( "#form" ).append( "<input type="email" name="friend_email[]" class="form-control"
required="">
" );
就是这样。
friend_email 将作为数组传递给 Mail
,其中的每封电子邮件都会收到邮件