Generare il QR Code con PHP e AJAX

QR Code (Quick Response code) è un particolare codice a barre in grado di memorizzare molti dati. Una volta scansionato, generalmente con un app dello smartphone, consente di accedere rapidamente alle informazioni in esso contenute.

Una delle applicazioni più diffuse riguarda il QR Code relativo all'URL di una pagina web: ad esempio, il QR Code stampato sull'etichetta di un prodotto ci permette, tramite lo smartphone, di accedere immediatamente alla pagina web che ne illustra le caratteristiche.
In PHP sono disponibili alcune librerie che consentono di stampare il QR Code: in questo esercizio si utilizza la libreria phpqrcode. Nella libreria phpqrcode è presente il file qrlib.php che deve essere incluso nel codice per consentire di utilizzare la funzione png(), all'interno della classe QRcode, che genera il QR Code.

Sintassi: QRcode :: png ($ text, $ file, $ ecc, $ pixel_Size, $ frame_Size);
- $ text: il messaggio di testo che deve essere nel codice QR (parametro obbligatorio)
- $ file: il percorso e il nome in cui salvare il QR generato
- $ ecc: la capacità di correzione degli errori di QR (4 livelli L, M, Q e H)
- $ pixel_Size: la dimensione in pixel del QR Code (1-10)
- $ frame_Size: la dimensione di Qr (1-10)

Per creare e testare l'applicazione si può utilizzare WAMP o un altro Server ed occorre scompattare e salvare la libreria phpqrcode nella cartella di progetto PHP.

La soluzione proposta, in PHP e AJAX per evitare il refresh della pagina, si compone di due files:
1. stampaqr.php : contiene il form HTML che consente di inserire il messaggio di testo e la dimensione in pixel del QR Code, e quindi di effettuare una richiesta Ajax per generare il codice QR con i valori del form
2. generaqrcode.php: utilizzando i valori ricevuti dal form restituisce l'immagine del codice QR che viene visualizzata sulla pagina

 

Scarica la libreria phpqrcode
Prova la soluzione
Scarica il codice della soluzione