Código QR: Cómo generarlo en Laravel 9

código qr

Cómo generar código QR en Laravel 9

A veces se necesita un código QR para la identidad del producto, el inventario y otros. Entonces, ¿cómo generar un QRcode? es fácil, podemos usar Simple QRcode para crear QRcode en el marco de laravel.

Hoy en día, todos sabemos cuánto se usa el código QR. El código QR es simplemente una imagen cifrada de algún contenido que no es legible. Necesita usar algunos de los lectores de códigos QR.

En este artículo, ambos aprenderemos cómo crear o generar un código QR para que cuando escaneemos el código pueda ser dirigido a SMS, correo electrónico, sitio web o simplemente para averiguar qué datos hay detrás del código QR.

Aquí, comenzaremos desde cero creando un nuevo proyecto de laravel.


Esta guía lo llevará a través de todos los pasos necesarios, que le indicarán cómo generar varios códigos QR en la aplicación Laravel 9 utilizando el paquete de código QR simple.

Un generador de códigos QR simple le brinda la libertad de generar diferentes tipos de códigos QR en la aplicación Laravel 9. Proporciona un envoltorio QrCode simple, que es fácil de integrar en laravel.

Cómo generar código QR en Laravel 9

  • Crear proyecto Laravel
  • Agregar detalles de la base de datos
  • Instalar paquete de código QR
  • Registrar servicio de código QR
  • Crear controlador
  • Añadir ruta
  • Genera códigos QR en Blade View
  • Ejecutar la aplicación Laravel

Crear proyecto Laravel

Primero, abre la Terminal y ejecuta el siguiente comando para crear un nuevo proyecto de Laravel:

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

Nota: Laravel 9 requiere PHP 8.0 o PHP 8.1.

o, si ha instalado el instalador de Laravel como una dependencia global del compositor:

laravel new qr-code-example

Agregar detalles de la base de datos

Después de la instalación, vaya al directorio raíz del proyecto, abra el archivo .env y configure los detalles de la base de datos de la siguiente manera:

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

Instalar paquete de código QR

Ingrese al símbolo del sistema, escriba el comando dado y comience a instalar el paquete simplesoftwareio/simple-qrcode; ayuda profundamente a crear varios tipos de códigos QR en la aplicación laravel.

composer require simplesoftwareio/simple-qrcode

Registrar servicio de código QR

Debe registrar los servicios de código QR en el archivo config/app.php, así que abra el archivo y actualice los proveedores y la matriz de alias con los servicios que se indican a continuación.

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

Crear controlador

En laravel, toda la lógica comercial va al archivo del controlador, y necesitamos un controlador para crear uno usando el comando dado.

php artisan make:controller QrCodeController

A continuación, abra QrCodeController.php y agregue el siguiente código en el archivo:

<?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;class QrCodeController extends Controller
{
    public function index()
    {
      return view('qrcode');
    }
}

Añadir ruta

Ahora, abra el archivo web.php y agregue las siguientes rutas, que se encuentran dentro del directorio de rutas:

<?phpuse Illuminate\Support\Facades\Route;
use App\Http\Controllers\QrCodeController;/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
*/Route::get('/qrcode', [QrCodeController::class, 'index']);

Genera códigos QR en Blade View

Le mostraremos cómo usar el archivo de visualización y generar códigos QR simples y de colores en laravel.

Ahora, está listo para configurar un archivo de vista de hoja, creando así el archivo de vista de hoja dentro de la carpeta de vistas, luego agregue el código proporcionado en el archivo resources/views/qrcode.blade.php.

<!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/[email protected]/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://techvblogs.com/blog/generate-qr-code-laravel-9') !!}
            </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://techvblogs.com/blog/generate-qr-code-laravel-9') !!}
            </div>
        </div>    </div>
</body>
</html>

Ayudantes para generar diferentes códigos QR

Bitcoin

Este ayudante genera un bitcoin escaneable para enviar pagos.

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.returnaddress.com'
]);

Email

Este asistente genera un código QR de correo electrónico que puede completar la dirección de correo electrónico, el asunto y el cuerpo:

QrCode::email($to, $subject, $body);//Fills in the to address
QrCode::email('[email protected]');//Fills in the to address, subject, and body of an e-mail.
QrCode::email('[email protected]', '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

Este ayudante genera la latitud y la longitud que un teléfono puede leer y abre la ubicación en Google Maps o una aplicación similar.

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

QrCode::geo(37.822214, -122.481769);

Número de teléfono

Este ayudante genera un código QR que se puede escanear y luego marca un número.

QrCode::phoneNumber($phoneNumber);

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

SMS (mensajes de texto)

Este asistente crea mensajes SMS que se pueden completar previamente con la dirección de envío y el cuerpo del mensaje:

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

Este ayudante crea códigos QR escaneables que pueden conectar un teléfono a una red WiFi:

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'
]);

Ejecutar la aplicación Laravel

Eventualmente, use el comando PHP craft para iniciar el servidor laravel y también use la URL dada para ver la aplicación.

php artisan serve

código QR

Gracias por leer este blog.


Si le interesa, puede echar un vistazo a algunos de los otros artículos que he escrito recientemente sobre Laravel:

Recent Post