SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Laravel Mail
Example: How
to Send an
Email using
Markdown
Template in
Laravel 8?
www.bacancytechnology.com
Sending an email is one most important
features of any project. In this tutorial, you
will learn how to send emails using
Markdown Template with the help of
Laravel Mail Example. Implementation of
the Markdown template is not a difficult
task. Yes, you heard it correctly! But, still
you haven’t played around it, here’s a step-
by-step tutorial, that will provide you with
instructions for sending an email using
Markdown.
CONTENTS
Tutorial Goal: Laravel Mail Example
using Markdown Template
1.
2. Step-by-step guidelines: Laravel Mail
Example: How to Send an Email using
Markdown Template in Laravel 8?
3. Conclusion
Tutorial Goal:
Laravel Mail
Example
using
Markdown
Template
Before diving into building a demo
application, let’s see this video to clarify
what we are building here.
https://youtu.be/RXeAD0qOEB8
The user will enter the name and email
address, and after clicking on submit
button, an email will be sent to the entered
email address. Login to that email address,
and there you can see the email.
Step-by-step
guidelines:
Laravel Mail
Example: How
to Send an
Email using
Markdown
Template in
Laravel 8?
Step 1: Create Laravel Project
composer create-project laravel/laravel --
prefer-dist BacancyEmail
We are going to Set Mail Configuration here.
For that, we will add our Gmail SMTP
configuration such as name, password, etc.
(Allow two-step verification and control
access to less secure apps. in Gmail). We will
use our .env file and add the configurations,
which are described below.
.env
MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=prashantkhunt1999@gmail.com
MAIL_PASSWORD= (third party app password <a
href="https://support.google.com/accounts/answer/
185833?hl=en" target="_blank">click hear</a>)
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=prashantkhunt1999@gmail
.com
MAIL_FROM_NAME="${APP_NAME}"
Step 2: Configuration Setup.
In this section, we will create Mailable Class
with Markdown. A new Mailable class,
which provides us to use Laravel event. It
also provides the facility to re-use them
anywhere in the application. For this, we
will first create a class of Mailable, and for
that, we will run the below artisan
command-
Step 3: Create Mail with
Markdown
php artisan make:mail BacancyMail --
markdown=emails.BacancyMail
app/Mail/BacancyMail.php
resources/views/emails/BacancyMail.bl
ade.php
By running the above command, two files
are generated:
Open the BacancyMail.php file in our app
folder and then write the below code.
app/Mail/BacancyMail.php
<?php
namespace AppMail;
use IlluminateBusQueueable;
use
IlluminateContractsQueueShouldQueue;
use IlluminateMailMailable;
use IlluminateQueueSerializesModels;
use Queueable, SerializesModels;
public $body;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($body)
{
$this->body = $body;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->markdown('emails.BacancyMail')-
>with('body',$this->body);
}
}
Step 4: Create a Controller
for Mail.
In this step, we are going to create
Controller Method. We will Create
MailController as a new controller. Run the
following command to create
MailController.
php artisan make:controller MailController
Now we will use our MailController file and
add the sendMail() function into it. Using this
file, we can quickly write the mail send code,
which is described as follows.
<?php
namespace AppHttpControllers;
use AppMailBacancyMail;
use IlluminateHttpRequest;
use Mail;
class MailController extends Controller
{
public function sendMail(Request $request)
{
$data = $request->validate([
'name'=>'required',
'email'=>'required|email'
]);
$email = $data['email'];
$body = [
'name'=>$data['name'],
app/http/Controllers/MailController
'url_a'=>'https://www.bacancytechnology.com/',
'url_b'=>'https://www.bacancytechnology.com/t
utorials/laravel',
];
Mail::to($email)->send(new
BacancyMail($body));
return back()->with('status','Mail sent
successfully');;
}
}
Step 5: Create a simple form
Moving forward towards our Laravel Mail
Example, now we will create one form in
this step that takes the name and email
from the user.
Open resources/views/welcome.blade.php
and add the below-mentioned code in the
body section of the welcome page.
resources/views/welcome.blade.php
<body class="antialiased">
<div
class="relative flex items-top justify-center min-
h-screen bg-gray-100 dark:bg-gray-900 sm:items-
center py-4 sm:pt-0">
<div class="max-w-6xl mx-auto sm:px-6 lg:px-
8">
@if (session('status'))
<div class="alert alert-success">
{{ session('status') }}
</div>
@endif
<div class="flex justify-center pt-8 sm:justify-
start sm:pt-0">
<h1>Bacancy Technology Mail Sending
Tutorials</h1>
</div>
<div class="mt-8 bg-white dark:bg-gray-800 overflow-hidden
shadow sm:rounded-lg">
<div class="grid grid-cols-1 md:grid-cols-2">
<div class="p-6">
<div class="ml-12">
<form action="{{route('send.email')}}" method="POST">
@csrf
<h6>Enter Name</h6>
<input style="background:DarkGrey; width:500px;
height:35px" type="text" name="name" value="" />
<br>
<h6>Enter Email </h6>
<input style="background:DarkGrey; width:500px;
height:35px" type="email" name="email" id="email">
<br><br><br>
<input class="btn btn-dark btn-block" type="submit"
value="submit" name="submit">
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
The UI would be something like this-
In step 3, we have created a blade file
named BacancyMail.blade.php for an email
template. This file will be useful to write the
design code. We will add the below code
into that file.
resources/views/emails/BacancyMail.blade.
php
@component('mail::message')
<h1>Hello {{$body['name']}},</h1>
<p>The email is a sample email for Laravel
Tutorial: How to Send an Email using
Laravel 8 from @component('mail::button',
['url' => $body['url_a']])
Bacancy Technology
@endcomponent</p>
Step 6: Create Body for the
Mail.
<p>Visit @component('mail::button', ['url' =>
$body['url_b']])
Laravel Tutorials
@endcomponent and learn more about the
Laravel framework.</p>
Happy coding!<br>
Thanks,<br>
{{ config('app.name') }}<br>
Laravel Team.
@endcomponent
In this step, we are going to Create Route.
We will create this for our testing mail. For
this, we will use our web route file; go to the
web.php file and define the following route.
web.php
Route::get('/', function () {
return view('welcome');
});
Route::post('/sendBacancyMail',
[MailController::class,'sendMail'])-
>name('send.email');
Step 7: Define the Route.
Now, finally we are done with out Laravel
mail example. Run the project by using this
command:
php artisan serve.
Step 8: Run the project
Hit http://127.0.0.1:8000/, and you’ll see the
user interface. Enter the name and email
address; you’ll receive an e-mail on that email
id.
You can find the entire the source code here –
Github Repository.
Conclusion
So, this was a beginner’s guide on how to
send email using the Markdown template in
Laravel 8. Laravel Mail example was pretty
straightforward, right? So, clone the github
repository and start playing around with
the code! I hope the Laravel Markdown
email example was helpful to you. Visit
Laravel Tutorial to explore more about
Laravel.
Bacancy Technology has dedicated and
skilled Laravel developers. Are you looking
for a Laravel expert? If yes, then without
wasting a second, contact us and hire
Laravel developer. We ensure to provide the
best and proficient Laravel developers who
can meet your requirements.
Happy Coding!
Thank You
www.bacancytechnology.com

Contenu connexe

Tendances

Cours système d’exploitation partie3
Cours système d’exploitation partie3Cours système d’exploitation partie3
Cours système d’exploitation partie3
manou2008
 
The World Wide Web
The World Wide WebThe World Wide Web
The World Wide Web
Angel Sophie
 

Tendances (20)

Ejercicios de redes
Ejercicios de redesEjercicios de redes
Ejercicios de redes
 
Web front end development introduction to html css and javascript
Web front end development introduction to html css and javascriptWeb front end development introduction to html css and javascript
Web front end development introduction to html css and javascript
 
Rapport de mini projet de programation web
Rapport de mini projet de programation webRapport de mini projet de programation web
Rapport de mini projet de programation web
 
Cours design pattern m youssfi partie 6 proxy
Cours design pattern m youssfi partie 6 proxyCours design pattern m youssfi partie 6 proxy
Cours design pattern m youssfi partie 6 proxy
 
Cours système d’exploitation partie3
Cours système d’exploitation partie3Cours système d’exploitation partie3
Cours système d’exploitation partie3
 
The World Wide Web
The World Wide WebThe World Wide Web
The World Wide Web
 
Html css
Html cssHtml css
Html css
 
Vb.net tutorial
Vb.net tutorialVb.net tutorial
Vb.net tutorial
 
exposé en HTML
exposé en HTMLexposé en HTML
exposé en HTML
 
OpenESB et BPEL
OpenESB et BPELOpenESB et BPEL
OpenESB et BPEL
 
Expose linux gestion des processus
Expose linux  gestion des processusExpose linux  gestion des processus
Expose linux gestion des processus
 
Chp2 - SOA
Chp2 - SOAChp2 - SOA
Chp2 - SOA
 
Introducción a HTML y CSS
Introducción a HTML y CSSIntroducción a HTML y CSS
Introducción a HTML y CSS
 
Awt, Swing, Layout managers
Awt, Swing, Layout managersAwt, Swing, Layout managers
Awt, Swing, Layout managers
 
Active browser web page
Active browser web pageActive browser web page
Active browser web page
 
Vb.net (loop structure)
Vb.net (loop structure)Vb.net (loop structure)
Vb.net (loop structure)
 
WEB SERVICE SOAP, JAVA, XML, JAXWS
WEB SERVICE SOAP, JAVA, XML, JAXWSWEB SERVICE SOAP, JAVA, XML, JAXWS
WEB SERVICE SOAP, JAVA, XML, JAXWS
 
Support de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfiSupport de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfi
 
Abap interview questions and answers
Abap interview questions and answersAbap interview questions and answers
Abap interview questions and answers
 
Cisco itn module 1
Cisco itn module 1Cisco itn module 1
Cisco itn module 1
 

Similaire à Laravel mail example how to send an email using markdown template in laravel 8

Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
singingfish
 
CICONF 2012 - Don't Make Me Read Your Mind
CICONF 2012 - Don't Make Me Read Your MindCICONF 2012 - Don't Make Me Read Your Mind
CICONF 2012 - Don't Make Me Read Your Mind
ciconf
 
Object Oriented Programming With PHP 5 #2
Object Oriented Programming With PHP 5 #2Object Oriented Programming With PHP 5 #2
Object Oriented Programming With PHP 5 #2
Wildan Maulana
 
Installing configuringdevelopingwithxampp
Installing configuringdevelopingwithxamppInstalling configuringdevelopingwithxampp
Installing configuringdevelopingwithxampp
vimalnambiar
 

Similaire à Laravel mail example how to send an email using markdown template in laravel 8 (20)

Task scheduling in laravel 8 tutorial
Task scheduling in laravel 8 tutorialTask scheduling in laravel 8 tutorial
Task scheduling in laravel 8 tutorial
 
Node mailer example how to send email using nodemailer with gmail &amp; mailtrap
Node mailer example how to send email using nodemailer with gmail &amp; mailtrapNode mailer example how to send email using nodemailer with gmail &amp; mailtrap
Node mailer example how to send email using nodemailer with gmail &amp; mailtrap
 
Laravel 8 export data as excel file with example
Laravel 8 export data as excel file with exampleLaravel 8 export data as excel file with example
Laravel 8 export data as excel file with example
 
Action Mailer
Action MailerAction Mailer
Action Mailer
 
How to Build Laravel Package Using Composer.pdf
How to Build Laravel Package Using Composer.pdfHow to Build Laravel Package Using Composer.pdf
How to Build Laravel Package Using Composer.pdf
 
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
Don't RTFM, WTFM - Open Source Documentation - German Perl Workshop 2010
 
CICONF 2012 - Don't Make Me Read Your Mind
CICONF 2012 - Don't Make Me Read Your MindCICONF 2012 - Don't Make Me Read Your Mind
CICONF 2012 - Don't Make Me Read Your Mind
 
Object Oriented Programming With PHP 5 #2
Object Oriented Programming With PHP 5 #2Object Oriented Programming With PHP 5 #2
Object Oriented Programming With PHP 5 #2
 
Build Your Own Instagram Filters
Build Your Own Instagram FiltersBuild Your Own Instagram Filters
Build Your Own Instagram Filters
 
Ruby On Rails Starter Kit
Ruby On Rails Starter KitRuby On Rails Starter Kit
Ruby On Rails Starter Kit
 
How to add watermark to image using php
How to add watermark to image using phpHow to add watermark to image using php
How to add watermark to image using php
 
mush With Xampp
mush With Xamppmush With Xampp
mush With Xampp
 
Installing configuringdevelopingwithxampp
Installing configuringdevelopingwithxamppInstalling configuringdevelopingwithxampp
Installing configuringdevelopingwithxampp
 
Ruby on rails integration testing with minitest and capybara
Ruby on rails integration testing with minitest and capybaraRuby on rails integration testing with minitest and capybara
Ruby on rails integration testing with minitest and capybara
 
Trigger Emails BigD17
Trigger Emails BigD17Trigger Emails BigD17
Trigger Emails BigD17
 
Murach : How to develop a single-page MVC web
Murach : How to develop a single-page MVC web Murach : How to develop a single-page MVC web
Murach : How to develop a single-page MVC web
 
Laravel development (Laravel History, Environment Setup & Laravel Installatio...
Laravel development (Laravel History, Environment Setup & Laravel Installatio...Laravel development (Laravel History, Environment Setup & Laravel Installatio...
Laravel development (Laravel History, Environment Setup & Laravel Installatio...
 
Sending Email with Rails
Sending Email with RailsSending Email with Rails
Sending Email with Rails
 
10 Email Etc
10 Email Etc10 Email Etc
10 Email Etc
 
Using Parse Server to send emails via Mandrill
Using Parse Server to send emails via MandrillUsing Parse Server to send emails via Mandrill
Using Parse Server to send emails via Mandrill
 

Plus de Katy Slemon

Plus de Katy Slemon (20)

React Alternatives Frameworks- Lightweight Javascript Libraries.pdf
React Alternatives Frameworks- Lightweight Javascript Libraries.pdfReact Alternatives Frameworks- Lightweight Javascript Libraries.pdf
React Alternatives Frameworks- Lightweight Javascript Libraries.pdf
 
Data Science Use Cases in Retail & Healthcare Industries.pdf
Data Science Use Cases in Retail & Healthcare Industries.pdfData Science Use Cases in Retail & Healthcare Industries.pdf
Data Science Use Cases in Retail & Healthcare Industries.pdf
 
How Much Does It Cost To Hire Golang Developer.pdf
How Much Does It Cost To Hire Golang Developer.pdfHow Much Does It Cost To Hire Golang Developer.pdf
How Much Does It Cost To Hire Golang Developer.pdf
 
What’s New in Flutter 3.pdf
What’s New in Flutter 3.pdfWhat’s New in Flutter 3.pdf
What’s New in Flutter 3.pdf
 
Why Use Ruby On Rails.pdf
Why Use Ruby On Rails.pdfWhy Use Ruby On Rails.pdf
Why Use Ruby On Rails.pdf
 
How Much Does It Cost To Hire Full Stack Developer In 2022.pdf
How Much Does It Cost To Hire Full Stack Developer In 2022.pdfHow Much Does It Cost To Hire Full Stack Developer In 2022.pdf
How Much Does It Cost To Hire Full Stack Developer In 2022.pdf
 
How to Implement Middleware Pipeline in VueJS.pdf
How to Implement Middleware Pipeline in VueJS.pdfHow to Implement Middleware Pipeline in VueJS.pdf
How to Implement Middleware Pipeline in VueJS.pdf
 
Sure Shot Ways To Improve And Scale Your Node js Performance.pdf
Sure Shot Ways To Improve And Scale Your Node js Performance.pdfSure Shot Ways To Improve And Scale Your Node js Performance.pdf
Sure Shot Ways To Improve And Scale Your Node js Performance.pdf
 
How to Develop Slack Bot Using Golang.pdf
How to Develop Slack Bot Using Golang.pdfHow to Develop Slack Bot Using Golang.pdf
How to Develop Slack Bot Using Golang.pdf
 
IoT Based Battery Management System in Electric Vehicles.pdf
IoT Based Battery Management System in Electric Vehicles.pdfIoT Based Battery Management System in Electric Vehicles.pdf
IoT Based Battery Management System in Electric Vehicles.pdf
 
Understanding Flexbox Layout in React Native.pdf
Understanding Flexbox Layout in React Native.pdfUnderstanding Flexbox Layout in React Native.pdf
Understanding Flexbox Layout in React Native.pdf
 
The Ultimate Guide to Laravel Performance Optimization in 2022.pdf
The Ultimate Guide to Laravel Performance Optimization in 2022.pdfThe Ultimate Guide to Laravel Performance Optimization in 2022.pdf
The Ultimate Guide to Laravel Performance Optimization in 2022.pdf
 
New Features in iOS 15 and Swift 5.5.pdf
New Features in iOS 15 and Swift 5.5.pdfNew Features in iOS 15 and Swift 5.5.pdf
New Features in iOS 15 and Swift 5.5.pdf
 
How to Hire & Manage Dedicated Team For Your Next Product Development.pdf
How to Hire & Manage Dedicated Team For Your Next Product Development.pdfHow to Hire & Manage Dedicated Team For Your Next Product Development.pdf
How to Hire & Manage Dedicated Team For Your Next Product Development.pdf
 
Choose the Right Battery Management System for Lithium Ion Batteries.pdf
Choose the Right Battery Management System for Lithium Ion Batteries.pdfChoose the Right Battery Management System for Lithium Ion Batteries.pdf
Choose the Right Battery Management System for Lithium Ion Batteries.pdf
 
Flutter Performance Tuning Best Practices From the Pros.pdf
Flutter Performance Tuning Best Practices From the Pros.pdfFlutter Performance Tuning Best Practices From the Pros.pdf
Flutter Performance Tuning Best Practices From the Pros.pdf
 
Angular Universal How to Build Angular SEO Friendly App.pdf
Angular Universal How to Build Angular SEO Friendly App.pdfAngular Universal How to Build Angular SEO Friendly App.pdf
Angular Universal How to Build Angular SEO Friendly App.pdf
 
How to Set Up and Send Mails Using SendGrid in NodeJs App.pdf
How to Set Up and Send Mails Using SendGrid in NodeJs App.pdfHow to Set Up and Send Mails Using SendGrid in NodeJs App.pdf
How to Set Up and Send Mails Using SendGrid in NodeJs App.pdf
 
Ruby On Rails Performance Tuning Guide.pdf
Ruby On Rails Performance Tuning Guide.pdfRuby On Rails Performance Tuning Guide.pdf
Ruby On Rails Performance Tuning Guide.pdf
 
Uncovering 04 Main Types and Benefits of Salesforce ISV Partnerships.pdf
Uncovering 04 Main Types and Benefits of Salesforce ISV Partnerships.pdfUncovering 04 Main Types and Benefits of Salesforce ISV Partnerships.pdf
Uncovering 04 Main Types and Benefits of Salesforce ISV Partnerships.pdf
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Dernier (20)

Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 

Laravel mail example how to send an email using markdown template in laravel 8

  • 1. Laravel Mail Example: How to Send an Email using Markdown Template in Laravel 8? www.bacancytechnology.com
  • 2. Sending an email is one most important features of any project. In this tutorial, you will learn how to send emails using Markdown Template with the help of Laravel Mail Example. Implementation of the Markdown template is not a difficult task. Yes, you heard it correctly! But, still you haven’t played around it, here’s a step- by-step tutorial, that will provide you with instructions for sending an email using Markdown.
  • 3. CONTENTS Tutorial Goal: Laravel Mail Example using Markdown Template 1. 2. Step-by-step guidelines: Laravel Mail Example: How to Send an Email using Markdown Template in Laravel 8? 3. Conclusion
  • 5. Before diving into building a demo application, let’s see this video to clarify what we are building here. https://youtu.be/RXeAD0qOEB8 The user will enter the name and email address, and after clicking on submit button, an email will be sent to the entered email address. Login to that email address, and there you can see the email.
  • 6. Step-by-step guidelines: Laravel Mail Example: How to Send an Email using Markdown Template in Laravel 8?
  • 7. Step 1: Create Laravel Project composer create-project laravel/laravel -- prefer-dist BacancyEmail
  • 8. We are going to Set Mail Configuration here. For that, we will add our Gmail SMTP configuration such as name, password, etc. (Allow two-step verification and control access to less secure apps. in Gmail). We will use our .env file and add the configurations, which are described below. .env MAIL_MAILER=smtp MAIL_HOST=smtp.gmail.com MAIL_PORT=587 MAIL_USERNAME=prashantkhunt1999@gmail.com MAIL_PASSWORD= (third party app password <a href="https://support.google.com/accounts/answer/ 185833?hl=en" target="_blank">click hear</a>) MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS=prashantkhunt1999@gmail .com MAIL_FROM_NAME="${APP_NAME}" Step 2: Configuration Setup.
  • 9. In this section, we will create Mailable Class with Markdown. A new Mailable class, which provides us to use Laravel event. It also provides the facility to re-use them anywhere in the application. For this, we will first create a class of Mailable, and for that, we will run the below artisan command- Step 3: Create Mail with Markdown php artisan make:mail BacancyMail -- markdown=emails.BacancyMail
  • 10. app/Mail/BacancyMail.php resources/views/emails/BacancyMail.bl ade.php By running the above command, two files are generated: Open the BacancyMail.php file in our app folder and then write the below code. app/Mail/BacancyMail.php <?php namespace AppMail; use IlluminateBusQueueable; use IlluminateContractsQueueShouldQueue; use IlluminateMailMailable; use IlluminateQueueSerializesModels;
  • 11. use Queueable, SerializesModels; public $body; /** * Create a new message instance. * * @return void */ public function __construct($body) { $this->body = $body; } /** * Build the message. * * @return $this */ public function build() { return $this->markdown('emails.BacancyMail')- >with('body',$this->body); } }
  • 12. Step 4: Create a Controller for Mail. In this step, we are going to create Controller Method. We will Create MailController as a new controller. Run the following command to create MailController. php artisan make:controller MailController Now we will use our MailController file and add the sendMail() function into it. Using this file, we can quickly write the mail send code, which is described as follows.
  • 13. <?php namespace AppHttpControllers; use AppMailBacancyMail; use IlluminateHttpRequest; use Mail; class MailController extends Controller { public function sendMail(Request $request) { $data = $request->validate([ 'name'=>'required', 'email'=>'required|email' ]); $email = $data['email']; $body = [ 'name'=>$data['name'], app/http/Controllers/MailController
  • 15. Step 5: Create a simple form Moving forward towards our Laravel Mail Example, now we will create one form in this step that takes the name and email from the user. Open resources/views/welcome.blade.php and add the below-mentioned code in the body section of the welcome page. resources/views/welcome.blade.php
  • 16. <body class="antialiased"> <div class="relative flex items-top justify-center min- h-screen bg-gray-100 dark:bg-gray-900 sm:items- center py-4 sm:pt-0"> <div class="max-w-6xl mx-auto sm:px-6 lg:px- 8"> @if (session('status')) <div class="alert alert-success"> {{ session('status') }} </div> @endif <div class="flex justify-center pt-8 sm:justify- start sm:pt-0"> <h1>Bacancy Technology Mail Sending Tutorials</h1> </div>
  • 17. <div class="mt-8 bg-white dark:bg-gray-800 overflow-hidden shadow sm:rounded-lg"> <div class="grid grid-cols-1 md:grid-cols-2"> <div class="p-6"> <div class="ml-12"> <form action="{{route('send.email')}}" method="POST"> @csrf <h6>Enter Name</h6> <input style="background:DarkGrey; width:500px; height:35px" type="text" name="name" value="" /> <br> <h6>Enter Email </h6> <input style="background:DarkGrey; width:500px; height:35px" type="email" name="email" id="email"> <br><br><br> <input class="btn btn-dark btn-block" type="submit" value="submit" name="submit"> </form> </div> </div> </div> </div> </div> </div> </body>
  • 18. The UI would be something like this-
  • 19. In step 3, we have created a blade file named BacancyMail.blade.php for an email template. This file will be useful to write the design code. We will add the below code into that file. resources/views/emails/BacancyMail.blade. php @component('mail::message') <h1>Hello {{$body['name']}},</h1> <p>The email is a sample email for Laravel Tutorial: How to Send an Email using Laravel 8 from @component('mail::button', ['url' => $body['url_a']]) Bacancy Technology @endcomponent</p> Step 6: Create Body for the Mail.
  • 20. <p>Visit @component('mail::button', ['url' => $body['url_b']]) Laravel Tutorials @endcomponent and learn more about the Laravel framework.</p> Happy coding!<br> Thanks,<br> {{ config('app.name') }}<br> Laravel Team. @endcomponent
  • 21. In this step, we are going to Create Route. We will create this for our testing mail. For this, we will use our web route file; go to the web.php file and define the following route. web.php Route::get('/', function () { return view('welcome'); }); Route::post('/sendBacancyMail', [MailController::class,'sendMail'])- >name('send.email'); Step 7: Define the Route.
  • 22. Now, finally we are done with out Laravel mail example. Run the project by using this command: php artisan serve. Step 8: Run the project Hit http://127.0.0.1:8000/, and you’ll see the user interface. Enter the name and email address; you’ll receive an e-mail on that email id. You can find the entire the source code here – Github Repository.
  • 24. So, this was a beginner’s guide on how to send email using the Markdown template in Laravel 8. Laravel Mail example was pretty straightforward, right? So, clone the github repository and start playing around with the code! I hope the Laravel Markdown email example was helpful to you. Visit Laravel Tutorial to explore more about Laravel. Bacancy Technology has dedicated and skilled Laravel developers. Are you looking for a Laravel expert? If yes, then without wasting a second, contact us and hire Laravel developer. We ensure to provide the best and proficient Laravel developers who can meet your requirements. Happy Coding!