CHECKING STATUS
I AM LISTENING TO
|

Day 24: PHP Dynamic QR Code – 7 Days of Docker

26. March 2025
.SHARE

Table of Contents

In today’s digital world, QR codes have become ubiquitous tools for quickly sharing information, redirecting to websites, or facilitating contactless interactions. While many third-party QR code services exist, hosting your own QR code generator provides greater control, privacy, and customization options. This guide explores PHP Dynamic QR code, an excellent self-hosted solution that allows you to create both static and dynamic QR codes with ease.

What is PHP Dynamic QR Code?

PHP Dynamic QR Code is an open-source script that enables the generation and management of both dynamic and static QR codes. Created by Gian Donato Inverso, it has become one of the most popular self-hosted QR code generators on GitHub with over 300 stars. The application offers a clean, responsive, and user-friendly interface built on AdminLTE and Core PHP.

Key Features

  • Dynamic QR Codes: Create, modify, and delete QR codes that can be updated without regenerating the code
  • Static QR Codes: Generate various types including Text, Email, Phone, SMS, WhatsApp, Skype, Location, Vcard, Event/Calendar, Bookmark, WiFi, PayPal, and Bitcoin QR codes
  • Advanced Dashboard: View comprehensive statistics on created QR codes and scans
  • Multi-User Support: Control panel with different access levels
  • Customization Options: 6 image formats, foreground/background colors, 4 precision levels, and 10 size options
  • Bulk Operations: Download and delete QR codes in bulk
  • URL Shortener: Built-in functionality with redirect options

Why Self-Host Your QR Code Generator?

Privacy and Data Control

When using third-party QR code services, your data and analytics often reside on external servers. By self-hosting, you maintain complete control over sensitive information and scan analytics.

No Subscription Fees

Most commercial QR code services charge monthly or annual fees for dynamic QR codes and analytics. A self-hosted solution eliminates these recurring costs.

Unlimited QR Codes

Create as many QR codes as needed without hitting usage limits or additional charges.

Customization Flexibility

Tailor the application to your specific requirements, potentially modifying the source code if necessary.

Offline Access

Once installed, your QR code generator works even without internet connectivity.

Installation with Docker

Docker provides the easiest way to set up PHP Dynamic QR Code. Here’s a step-by-step guide:

Prerequisites

  • Docker and Docker Compose installed on your system
  • Basic understanding of Docker containers
  • A server or computer to host the application

Step 1: Create the Docker Compose File

Create a new directory for your installation and add a file named docker-compose.yml with the following content:

Make sure to:

  • Replace your-secure-password-1 and your-secure-password-2 with strong passwords
  • Change BASE_URL to your domain if you’re using one (https://yourdomain.com) or keep it as http://localhost:5462 for local testing

Step 2: Deploy the Application

Run the following command in the directory containing your docker-compose.yml file:

This command pulls the necessary images and starts the containers in detached mode.

Step 3: Access the Application

After deployment (allow about a minute for everything to start properly), access the application at:

  • http://localhost:5462 (if installed locally)
  • https://yourdomain.com (if you configured a domain)

Step 4: First Login

Log in with the default superadmin account:

  • Username: superadmin
  • Password: superadmin

Step 5: Change Default Credentials

Immediately after logging in, change the default credentials:

  1. Click on “Users” in the left navigation menu
  2. Click the edit (pencil) icon next to the superadmin user
  3. Update the username and password
  4. Click “Submit” to save changes

Using PHP Dynamic QR Code

Removing Demo Entries

When you first install the application, you’ll notice some demo QR codes. To remove them:

  1. Go to “Dynamic Qr Codes” → “List all”
  2. Check the box before “ID” to select all QR codes
  3. Choose “Delete” from the dropdown menu and click “Apply”
  4. Repeat the same process for “Static Qr Codes”

Creating QR Codes

Static QR Codes

Static QR codes contain fixed information that cannot be changed after creation. They’re ideal for permanent information like WiFi credentials, contact details, or unchanging URLs.

  1. Go to “Static Qr Codes” → “Add new”
  2. Select the QR code type (Text, Email, WiFi, etc.)
  3. Configure the appearance options:
    • Foreground and background colors
    • Precision level
    • Size and filename
    • Output format
  4. Enter the specific information for your chosen QR code type
  5. Click “Submit” to generate your QR code

Dynamic QR Codes

Dynamic QR codes point to a URL that can be changed later without regenerating the QR code. They’re perfect for marketing campaigns, menus, or any content that might need updating.

  1. Go to “Dynamic Qr Codes” → “Add new”
  2. Configure the appearance options
  3. Enter the destination URL
  4. Provide a filename
  5. Select the format and owner
  6. Click “Submit” to create your dynamic QR code

Managing Users

To add additional users:

  1. Go to “Users” → “+Add new”
  2. Enter username and password
  3. Select user type (Admin or Super admin)
  4. Click “Submit”

Benefits of Dynamic QR Codes

Unlike static QR codes, dynamic QR codes offer several advantages:

  1. Editable Content: Change the destination URL without reprinting the QR code
  2. Analytics: Track scans, locations, devices, and user behavior
  3. Faster Scanning: Dynamic QR codes typically scan faster than static ones
  4. Scheduled Campaigns: Deliver different content based on timing
  5. Short URLs: The embedded URL is shorter and cleaner
  6. Retargeting Capabilities: Can be used for online marketing retargeting

Customization Options

PHP Dynamic QR Code allows you to customize the interface appearance. Click the four squares icon in the top left corner to access personalization options, including:

  • Color themes
  • Menu layout and size
  • Navigation bar options
  • Sidebar presentation

Thoughts

Self-hosted PHP Dynamic QR Code provides a powerful, flexible, and cost-effective solution for generating and managing QR codes. By using Docker for installation, you can quickly deploy this useful tool without extensive server configuration. Whether you need QR codes for business, personal use, or inventory management, this self-hosted solution gives you complete control over your QR code generation and analytics.


Useful Links

By setting up your own QR code generator, you’ll gain independence from third-party services while enjoying enhanced privacy, unlimited usage, and complete control over your data.

Let’s Talk!

Looking for a reliable partner to bring your project to the next level? Whether it’s development, design, security, or ongoing support—I’d love to chat and see how I can help.

Get in touch,
and let’s create something amazing together!

RELATED POSTS

FrankenWP is a specialized WordPress Docker image built on FrankenPHP, which is a PHP application server built on top of the Caddy web server. This combination offers several advantages: This guide will walk you through setting up FrankenWP on your own server using Docker Compose, including all necessary configuration options and client connection details. Also […]

Remember when people used to joke that PHP was dying? Well, in 2025, PHP is not only alive and kicking but thriving thanks to its Frankenstein-inspired application server that’s been taking the web development world by storm! What Is This Monster? FrankenPHP is the brainchild of Kévin Dunglas (the same genius behind API Platform) who […]

Hey there! Ever wondered how websites know when you’re actually looking at them, or if you’ve wandered off to make coffee? That’s presence detection in action – and it’s super useful for creating responsive, user-friendly web apps. In this guide, I’ll walk you through everything you need to know about detecting user presence with JavaScript […]

Alexander

I am a full-stack developer. My expertise include:

  • Server, Network and Hosting Environments
  • Data Modeling / Import / Export
  • Business Logic
  • API Layer / Action layer / MVC
  • User Interfaces
  • User Experience
  • Understand what the customer and the business needs


I have a deep passion for programming, design, and server architecture—each of these fuels my creativity, and I wouldn’t feel complete without them.

With a broad range of interests, I’m always exploring new technologies and expanding my knowledge wherever needed. The tech world evolves rapidly, and I love staying ahead by embracing the latest innovations.

Beyond technology, I value peace and surround myself with like-minded individuals.

I firmly believe in the principle: Help others, and help will find its way back to you when you need it.