How send email in Laravel 5.8

前端 未结 3 544
情深已故
情深已故 2021-01-21 01:42

I am beginner in Laravel. I use Laravel 5.8 in my project. I want send email from contact form.

I have this code:

public function sendContactForm($reques         


        
3条回答
  •  半阙折子戏
    2021-01-21 02:07

    1. first of all you have to create a mail class in app/Mail
    2. create you view
    3. on your sendcontactform controller call the mail class
    4. dont forget to also call the mail facades: use Illuminate\Support\Facades\Mail;

    examples:

    //mail class file inside app/Mail directory
    
        username = $username;
                $this->message= $message;
            }
    
            /**
             * Build the message.
             *
             * @return $this
             */
            public function build()
            {
                return $this->view('contactform');
            }
        }
    //your controller
    
    use Illuminate\Support\Facades\Mail;
    use App\Mail\SendContact;
    
    public function sendContactForm($request)
        {
            $this->validate($request, [
                'name' => 'required|string',
                'topic' => 'required|string',
                'email' => 'required|email',
                'message' => 'required|string',
                'captcha' => 'required|captcha',
                'acceptReg' => 'required|integer',
            ]);
    
    
            $title = $request->input('topic');
            $txt = nl2br($request->input('message'));
            $userName = $request->input('name');
            $email = $request->input('email');
            $ip = $request->getClientIp();
            $dateTime = date('Y-m-d H:i:s');
    
            $message = "Masz wiadomość ze strony". env('APP_NAME')."
    "; $message .= " Dane wiadomości: $dateTime [$ip]
    Tytuł wiadomości: $title
    Imię: $userName
    Adres email: $email
    Wiadomość: $txt
    "; Mail::to($email)->send(new SendContact($userName, $message)); die('mail sent!'); } //your blade contactform.blade.php @extends('app.layouts') @section('content') Hello, {{ $username }}
    Your enquiry has been received

    {{ $message }}

    @endsection in your .env file define this MAIL_DRIVER=smtp MAIL_HOST="mail.example.com" //this should be from your webhost MAIL_PORT=465 MAIL_USERNAME="info@example.com" //this is the email from your domain MAIL_PASSWORD="************" //password of the email MAIL_FROM_ADDRESS=info@example.com MAIL_FROM_NAME='Enquiry Information' MAIL_ENCRYPTION=ssl

    hope this helps

提交回复
热议问题