我正在尝试通过联系表格发送电子邮件
Posted
技术标签:
【中文标题】我正在尝试通过联系表格发送电子邮件【英文标题】:I'm trying to send email through a contact form 【发布时间】:2017-06-27 18:48:11 【问题描述】:电子邮件错误
AbstractSmtpTransport.php 第 383 行中的 Swift_TransportException: 预期响应代码 250,但得到代码“530”,消息“530 5.7.1 需要身份验证” " 到目前为止,这是我的 mail.php
<?php
return [
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'from' => [
'address' => 'hello@example.com',
'name' => 'Example',
],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'sendmail' => '/usr/sbin/sendmail -bs',
];
这是我的控制器
public function contactstore(Request $request)
$data = array_map('trim', $request->all());
$rules = [
'email' => 'required | email',
'name' => 'required',
'msg' => 'required | min:8',
];
$validator = Validator::make($data, $rules);
if ($validator->fails())
return redirect()->back()->withErrors($validator)->withInput()->with('error', 'Validation Error.');
else
$data = [
'from' => 'quizmumbai@gmail.com',
'name' => $data['name'],
'email' => $data['email'],
'msg' => $data['msg'],
'view_name' => 'pages.email.querymail',
'to' => 'yogesh696ksingh@gmail.com',
'subject' => 'Event Query for TML 2017',
'timestamp' => date('j/M/Y', time()),
];
Mail::send($data['view_name'], $data, function ($message) use ($data)
$message->from($data['from'], $data['name']);
$message->to($data['to'])->subject($data['subject']);
);
if (count(Mail::failures()) > 0)
return redirect()->back()->with('error', 'Cannot send mail');
else return redirect()->back()->with('success', 'We will get back to you shortly')->with('message','Thanks for');
是因为我在本地服务器上尝试吗?
【问题讨论】:
您是否在 .env 文件中正确设置了用户名和密码? 已检查。一切正常 如果您只是在本地服务器上进行测试,您可以使用 Mailtrap (mailtrap.io) 之类的服务。它真的很容易设置 您能否确认您的网站是如何运行的 - 宅基地等 【参考方案1】:您必须重新启动网络服务器才能获取新的 .env
值。
【讨论】:
以上是关于我正在尝试通过联系表格发送电子邮件的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Flutter Web 通过联系表单发送电子邮件?