我正在尝试通过联系表格发送电子邮件

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 值。

【讨论】:

以上是关于我正在尝试通过联系表格发送电子邮件的主要内容,如果未能解决你的问题,请参考以下文章

联系表格 7 在电子邮件正文中添加图像

Mandrill:无法通过表单发送邮件

如何使用 Flutter Web 通过联系表单发送电子邮件?

为啥在通过电子邮件发送联系表格时“已禁用”会导致问题? [复制]

发送电子邮件前打印一些数据(联系表格7)

如何使用联系表格 7 在邮件正文中发送 HTML 内容?