How to Generate QR Code in Laravel 9 Example

Published on : July 21,2022
How to Generate QR Code in Laravel 9 Example

Hi Developer,

QR codes are sometimes needed for product identity, inventory and others. Then, how to generate a QRcode? it's easy, we can use Simple QRcode to create QRcode in laravel framework.

Nowadays, we all know how much use the QR code. QR code is simply an encrypted image of some content that is not readable. It needs to use some of the QR code readers.

In this article, we will both learn how to create or generate a QRcode so that when we scan the code it can be directed to SMS, email, website or just to find out what data is behind the QR code.

In this article, we will start from scratch by starting with creating a new laravel project.

This guide will take you through all the necessary steps, which will tell you how to generate various QR codes in the Laravel 9 application using the simple QR code package.

A simple QR code generator gives you the freedom to generate different types of QR Codes in the Laravel 9 app. It gives a simple QrCode wrapper, which is easy to integrate into laravel.

 

How to Generate QR Code in Laravel 9

  • Create Laravel Project
  • Add Database Details
  • Install QR Code Package
  • Register QR Code Service
  • Create Controller
  • Add Route
  • Generate QR Codes in Blade View
  • Run Laravel App

 

Create Laravel Project

First, open Terminal and run the following command to create a fresh Laravel project:

composer create-project --prefer-dist laravel/laravel:^9.0 qr-code-example

 

Note: Laravel 9 requires PHP 8.0 or PHP 8.1.

or, if you have installed the Laravel Installer as a global composer dependency:

laravel new qr-code-example

Add Database Details

After, Installation Go to the project root directory, open the .env file, and set database detail as follow:

DB_CONNECTION=mysql 
DB_HOST=127.0.0.1 
DB_PORT=3306 
DB_DATABASE=<DATABASE NAME>
DB_USERNAME=<DATABASE USERNAME>
DB_PASSWORD=<DATABASE PASSWORD>

Install QR Code Package

Get into the command prompt, type the given command, and begin installing the simplesoftwareio/simple-qrcode package; it profoundly helps create various kinds of QR codes in the laravel app.

composer require simplesoftwareio/simple-qrcode

Register QR Code Service

You have to register the QR code services into the config/app.php file, so open the file and update the providers and alias array with the given below services.

<?php

    return [

    'providers' => [
        ....                
        SimpleSoftwareIO\QrCode\QrCodeServiceProvider::class,
    ],
    'aliases' => [
        ....                
        'QrCode' => SimpleSoftwareIO\QrCode\Facades\QrCode::class,
    ]

 

Create Controller

In laravel, all the business logic goes into the controller file, and we need a controller to create one by using the given command.

php artisan make:controller QrCodeController

Next, Open QrCodeController.php and add the following code into the file:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class QrCodeController extends Controller
{
    public function index()
    {
      return view('qrcode');
    }
}

 

Add Route

Now, open the web.php file and add the following routes into it, which are located inside the routes directory:

<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\QrCodeController;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
*/

Route::get('/qrcode', [QrCodeController::class, 'index']);

 

Generate QR Codes in Blade View
We will show you how to use the view file and generate simple and colored QR Codes in laravel.

Now, you are ready to set up a blade view file, hence creating the blade view file within the views folder, after that add the provided code in the resources/views/qrcode.blade.php file.

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title>How to Generate QR Code in Laravel 9</title>
    <meta name="csrf-token" content="{{ csrf_token() }}">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"/>
</head>

<body>

    <div class="container mt-4">

        <div class="card">
            <div class="card-header">
                <h2>Simple QR Code</h2>
            </div>
            <div class="card-body">
                {!! QrCode::size(300)->generate('https://www.opencodesolution.com/article/how-to-generate-qr-code-in-laravel-9-example') !!}
            </div>
        </div>

        <div class="card">
            <div class="card-header">
                <h2>Color QR Code</h2>
            </div>
            <div class="card-body">
                {!! QrCode::size(300)->backgroundColor(255,90,0)->generate('https://www.opencodesolution.com/article/how-to-generate-qr-code-in-laravel-9-example') !!}
            </div>
        </div>

    </div>
</body>
</html>

 

Helpers For Generate Different QR Codes
 

BitCoin

This helper generates a scannable bitcoin to send payments.

QrCode::BTC($address, $amount);

//Sends a 0.334BTC payment to the address
QrCode::BTC('bitcoin address', 0.334);

//Sends a 0.334BTC payment to the address with some optional arguments
QrCode::size(500)->BTC('address', 0.0034, [
    'label' => 'my label',
    'message' => 'my message',
    'returnAddress' => 'https://www.opencodesolution.com/'
]);

 

E-Mail

This helper generates an e-mail QRcode that is able to fill in the e-mail address, subject, and body:

QrCode::email($to, $subject, $body);

//Fills in the to address
QrCode::email('foo@bar.com');

//Fills in the to address, subject, and body of an e-mail.
QrCode::email('foo@bar.com', 'This is the subject.', 'This is the message body.');

//Fills in just the subject and body of an e-mail.
QrCode::email(null, 'This is the subject.', 'This is the message body.');

 

Geo
This helper generates latitude and longitude that a phone can read and opens the location in Google Maps or a similar app.

QrCode::geo($latitude, $longitude);

QrCode::geo(37.822214, -122.481769);

 

Phone Number

This helper generates a QR code that can be scanned and then dials a number.

QrCode::phoneNumber($phoneNumber);

QrCode::phoneNumber('555-555-5555');
QrCode::phoneNumber('1-800-Laravel');

 

SMS (Text Messages)

This helper makes SMS messages that can be prefilled with the send-to address and body of the message:

QrCode::SMS($phoneNumber, $message);

//Creates a text message with the number filled in.
QrCode::SMS('555-555-5555');

//Creates a text message with the number and message filled in.
QrCode::SMS('555-555-5555', 'Body of the message');

 

WiFi

This helper makes scannable QR codes that can connect a phone to a WiFi network:

QrCode::wiFi([
    'encryption' => 'WPA/WEP',
    'ssid' => 'SSID of the network',
    'password' => 'Password of the network',
    'hidden' => 'Whether the network is a hidden SSID or not.'
]);

//Connects to an open WiFi network.
QrCode::wiFi([
    'ssid' => 'Network Name',
]);

//Connects to an open, hidden WiFi network.
QrCode::wiFi([
    'ssid' => 'Network Name',
    'hidden' => 'true'
]);

//Connects to a secured WiFi network.
QrCode::wiFi([
    'ssid' => 'Network Name',
    'encryption' => 'WPA',
    'password' => 'myPassword'
]);

 

Run Laravel App

Eventually, use the PHP artisan command to start the laravel server, and also use the given URL to view the app.

php artisan serve

 

Hope it can help you…

 

Categories : Laravel PHP

Tags : PHP Laravel QR Code

Praful Sangani
Praful Sangani
I'm a passionate full-stack developer with expertise in PHP, Laravel, Angular, React Js, Vue, Node, Javascript, JQuery, Codeigniter, and Bootstrap. I enjoy sharing my knowledge by writing tutorials and providing tips to others in the industry. I prioritize consistency and hard work, and I always aim to improve my skills to keep up with the latest advancements. As the owner of Open Code Solution, I'm committed to providing high-quality services to help clients achieve their business goals.


29 Comments

fenofibrate online buy tricor 160mg oral tricor 160mg us


order tadalafil sale sildenafil 100mg price order viagra 50mg online


ketotifen online buy buy generic ketotifen 1mg tofranil 75mg generic


mintop uk erectile dysfunction pills over the counter best erection pills


order precose 25mg for sale buy micronase 2.5mg pills griseofulvin order online


order aspirin online buy aspirin 75 mg without prescription imiquimod order


purchase melatonin sale cerazette sale danazol 100mg generic


order dipyridamole 100mg dipyridamole sale buy pravachol medication


florinef 100 mcg canada pill rabeprazole buy loperamide generic


cost etodolac 600mg order pletal generic cilostazol 100mg drug


order prasugrel 10mg without prescription prasugrel for sale tolterodine online order


buy mestinon paypal buy pyridostigmine 60mg pills maxalt without prescription


buy ferrous sulfate 100mg sale pill ferrous 100 mg buy betapace without a prescription


enalapril 10mg pill purchase casodex buy generic duphalac


buy latanoprost generic zovirax where to buy exelon 6mg sale


betahistine 16 mg generic latanoprost online buy buy probenecid online cheap


purchase premarin without prescription buy generic premarin buy sildenafil 100mg online cheap


buy prilosec sale buy singulair 5mg without prescription buy lopressor 100mg generic


buy telmisartan generic buy plaquenil no prescription buy molnunat pills


order cialis 10mg online cheap viagra cialis buy generic viagra 50mg


cenforce 50mg pill order cenforce online purchase chloroquine generic


buy cheap modafinil modafinil online buy deltasone online cheap


cefdinir online buy generic glucophage order prevacid 30mg without prescription


isotretinoin 20mg pill buy amoxicillin 250mg online purchase azithromycin for sale


buy azithromycin 500mg generic order gabapentin 800mg generic neurontin online order


atorvastatin 20mg ca buy albuterol generic buy amlodipine 10mg pills


win real money online casino generic furosemide 40mg buy generic furosemide over the counter


purchase protonix without prescription zestril us buy cheap generic pyridium


casino games free blackjack online buy albuterol without prescription


Leave a comment

We'll never share your email with anyone else. Required fields are marked *

Related Articles

Access specifier in php
Praful Sangani By Praful Sangani - July 20,2022