Hello folks, here we ‘ll know how to send emails using sendgrid in laravel. We have many ways to send emails in laravel, we can send emails using plain php or we can use email service providers like SendGrid, mailgun, mandrill and many more. As one of the follower of this site laravel.com has request me to post a tutorial on ‘sending emails using sendgrid’ am posting this here.

Follow these few simple steps,

Step 1 – Register SendGrid Account

Go to https://sendgrid.com .
Click Try for Free button
Fill all the necessary details
Wait for a email from SendGrid conforming that your account is provisioned.
Cool,you are ready to go.

Step 2 – Change mail configurations in .env and mail.php files

Open .env located at root of the application, edit the file as below
Now open mail.php located in /config/mail.php, (for further reference on folder/application structure look at previous post on Laravel application structure)
edit the file as below,
if your website has ssl certificate, change the line 'encryption' => 'tls' to'encryption' => 'ssl' and 'port' => 465,

Step 3 – Send emails the way you want

We ‘ll create some textarea, and the text entered will be sent as a mail when an valid email is entered,
check the form below,

1
2
3
4
5
6
7
8
9
10
11
12
<form class="w3-container" action="sendemail" method="POST"
            role="email">
            {{ csrf_field() }}
            <p>
                <label>Enter Some Text</label>
                <textarea class="w3-input" type="text" name="message"></textarea>
            </p>
            <p>
                <label>Email</label> <input class="w3-input" type="email"> <input
                    type="submit" name="toEmail" class="w3-btn w3-orange" value="Send">
            </p>
        </form>
and we create another form just with email field,
When the send button is clicked we route it to the following function,
and the view for the emails which we are going to be send be like,

That’s it, look the below screen shots for reference,


Sending emails using SendGrid - justlaravel.com
Sending emails using SendGrid
Sending emails using SendGrid - justlaravel.com
Sending emails using SendGrid