Benutzer-Werkzeuge

Webseiten-Werkzeuge


php:qr_code

Dies ist eine alte Version des Dokuments!


QR-Code (Quick Response) mit PHP erstellen

Grundlagen

Ein QR-Code kann auf einem Printmedium wie z. B. einem Flyer oder einer Visitenkarte gedruckt werden, damit er von einer entsprechenden App für Smartphones eingescannt werden kann. Für den Einsatz eines QR-Codes sind verschiedene Anwendungsbeispiele denkbar:

  1. Internet-Adresse öffnen
  2. Visitenkarte auf dem Smartphone oder Tablet speichern
  3. E-Mail erstellen
  4. SMS erstellen
  5. automatische Einrichtung von WLAN-Zugänge

Es gibt 40 verschiedene Größen für einen QR-Code. Die Datenmenge ist Abhängig von der Anzahl der zur Verfügung stehenden Elementen.

Größe Anzahl der Elemente
1 21 x 21
2 25 x 25
3 29 x 29
usw. jeweils 4 x 4 mehr
40 177 x 177

In der Größe 40 können maximal 4.286 alphanumerische Zeichen gespeichert werden!

Fehlerkorrektur

Ein QR-Code ist mit einer eigenen Fehlerkorrektur ausgestattet. Somit kann er unter Umständen auch noch lesbar sein, wenn er Schmutz, knicke oder risse aufweist. Jedoch wird ein QR-Code mit zunehmender Fehlerkorrektur automatisch größer, da die Korrektur Platz auf der Grafik benötigt.

Level Fehlerkorrektur
L (Low) 7 %
M (Medium) 15 %
Q (Quartile) 25 %
H (High) 30 %

PHP-Klasse "QRCode"

Unter http://phpqrcode.sourceforge.net/ können Sie sich eine PHP-Klasse für die einfache Erstellung eines QR-Codes herunterladen. Mit dieser Klasse ist es möglich, einen QR-Code zu erstellen und entweder direkt auf der Webseite anzuzeigen oder als Grafik im Rasterformat „JPEG“ oder „PNG“ oder sogar im Vektorformat „SVG“ im Dateisystem zu speichern. Die gespeicherte Grafik kann dann z. B. per FPDF in ein PDF-Dokument eingefügt werden, wie im folgendem Beispiel gezeigt wird.

Code-Beispiel

function createQR( $id )
{
    $text"https://www.zieladresse.de/datei.php?id=" . $id;
    $filename = "qr_codes/Code_" . $id;
 
    include('phpqrcode/qrlib.php');
    QRcode::png( $text, $filename, QR_ECLEVEL_M );
    return $filename;
}
 
$filename = createQR( 9999 );
echo $filename;
php/qr_code.1485017830.txt.gz · Zuletzt geändert: 2017/01/21 00:00 (Externe Bearbeitung)