QR Code Everywhere!! Mungkin di website / proyek kita juga perlu dibikinin juga tuh biar nggak kalah keren.. Nggak susah kok,, yang penasaran ikutin aja tutorial kali ini.. :D

Membuat dan Menampilkan QR Code secara Dinamis dengan PHP

Salam jagocoding,, kalo biasanya saya selalu berbagi tutorial tentang CSS, kali ini saya ingin berbagi tutorial saya tentang PHP aja.. Iya, PHP aja nggak pake embel-embel yang lain.. Di tutorial kali ini kita akan mencoba membuat, sekaligus menampilkan QR Code. Isi QR Code yang akan kita buat ini terserah sesuai kebutuhan kita.. Bisa diisi nama website kita, alamat fesbuk kita, atau URL website di momen tertentu, dan sebagainya..

Pertama-tama, kita download dulu pluginnya.. Plugin QR Code yang akan kita pakai di tutorial ini saya ambil dari http://sourceforge.net/projects/phpqrcode/files/latest/download?source=files. Tenang aja, plugin ini gratis, tinggal download, terus diextract ke folder project web kita. Hasil ekstrakan kulit manggispluginnya kita biarkan dalam bentuk folder biar tetap rapi. Jadi di folder project saya sekarang isinya adalah folder dengan nama phpqrcode, dan file index.php

 

Mari kita ke file index.php yang masih kosong ini.. Langkah pertamanya, kita include file library utama plugin tsb.. namanya qrlib.php.. setelah itu kita buat sebuah folder untuk menampung gambar QR Code kita nantinya.

<?php
include "phpqrcode/qrlib.php"; //<-- LOKASI FILE UTAMA PLUGINNYA

$tempdir = "temp/"; //<-- Nama Folder file QR Code kita nantinya akan disimpan
if (!file_exists($tempdir))#kalau folder belum ada, maka buat.
    mkdir($tempdir);



?>

Cara memakai pluginnya pun nggak begitu susah.. Kita cuma perlu tau parameter inputan apa aja yang harus kita isi.. Parameter pertamanya yaitu teks apa yang ingin kita inputkan ke QR Code tersebut. Parameter kedua isinya file gambar QR Code nanti akan disimpan dimana? parameter ketiga kita menentukan kualitas QR Codenya, parameter keempat isinya besaran ukuran QR Code, dan terakhir besaran paddingnya.

Jadi dari parameter-parameter tersebut, cara membuatnya jadi seperti ini :

<?php
...
//lanjutan yang tadi

#parameter inputan
$isi_teks = "Belajar QR Code itu asik";
$namafile = "coba.png";
$quality = 'H'; //ada 4 pilihan, L (Low), M(Medium), Q(Good), H(High)
$ukuran = 5; //batasan 1 paling kecil, 10 paling besar
$padding = 0;

QRCode::png($isi_teks,$tempdir.$namafile,$quality,$ukuran,$padding);



?>

Cuma segitu aja? Iya.. cuma segitu aja.. Kalau step by stepnya diikuti dengan tepat, hasilnya bisa kita liat langsung di direktori $tempdir kita tadi.. Hasil QR Code dari coding diatas tadi itu seperti ini nih..

QR Code

 

Simpel kan ya? Penerapan QR Code yang paling umum biasanya untuk mengshare URL website tertentu atau website yang saat itu sedang dikunjungi. Caranya tetap sama, hanya saja kita perlu inputan URL lengkap untuk dishare.. Mungkin sedikit snippet fungsi ini bisa membantu,,

<?php
...
function get_current_url($s, $use_forwarded_host=false)
{
    $ssl = (!empty($s['HTTPS']) && $s['HTTPS'] == 'on') ? true:false;
    $sp = strtolower($s['SERVER_PROTOCOL']);
    $protocol = substr($sp, 0, strpos($sp, '/')) . (($ssl) ? 's' : '');
    $port = $s['SERVER_PORT'];
    $port = ((!$ssl && $port=='80') || ($ssl && $port=='443')) ? '' : ':'.$port;
    $host = ($use_forwarded_host && isset($s['HTTP_X_FORWARDED_HOST'])) ? $s['HTTP_X_FORWARDED_HOST'] : (isset($s['HTTP_HOST']) ? $s['HTTP_HOST'] : null);
    $host = isset($host) ? $host : $s['SERVER_NAME'] . $port;
    return $protocol . '://' . $host . $s['REQUEST_URI'];
}

?>

Itu adalah fungsi untuk mendapatkan URL yang sedang dikunjungi.. Jika fungsi get_current_url itu kita gabungkan dengan fungsi pembuatan QR Code tadi seperti ini , 

<?php
....

$isi_teks = get_current_url($_SERVER); //inputan fungsi tadi itu cuma $_SERVER aja
$namafile = "url_saat_ini.png";
$quality = 'H';
$ukuran = 4;
$padding = 2;

QRCode::png($isi_teks,$tempdir.$namafile,$quality,$ukuran,$padding);

setelah itu QR Code ditampilkan dengan tag <img> seperti biasa,, 

<img src="temp/url_saat_ini.png">

Taraaa,, jadilah QR Code dinamis yang akan terus berubah-ubah sesuai alamat yang sedang kita kunjungi.. 

Hasil QR Code Dinamis

 

Sekian tutorial saya kali ini,, semoga berguna buat kita semua deh.. Seperti biasa, link demo dan download sudah saya sediakan untuk keperluan belajar bersama.. Sampai ketemu di tutorial selanjutnya~

 

 

 

 

 


About Author

Christian Rosandhy


Comment & Discussions

  • Dennis Pandu Utomo
    Gan, makasih tutorialnya gan... sangat bermanfaat.

    Gan ane mau tanya, bisakah php di beri QR Code Scanner, misal di Laptop scan menggunakan Webcam, Android scan menggunakan Back Camera, seperti Aplikasi2 Android tetapi berbasiskan web php? Lalu setelah di scan otomatis akan redirect ke Linknya. Kalo boleh tutorial seperti apa gan?

    • Christian Rosandhy

      kalau di Android,, rata-rata kameranya udah built in scan QR Code.. kalau di PHP sendiri sih belum pernah nyoba, karena QR Code sendiri kan tujuannya utk respon cepat (Quick Response), jadi kurang cocok diaplikasikan di PC / laptop gitu deh..


  • Kristianto Wijaya
    Kalo mau isi data qr nya dengan
    Nik
    Fakultas
    Dan ada jam masuk secara real time itu codingnya gimana ya gan

  • 'Webber Van Botter
    mas kalo kita mau ngeletakkin qr codenya di file rtf gimana ya ?
    dan isi qr codenya berasal dari database mysql?
    ado contohnya gak ?

  • Muhammad Reyhan
    gan, cara agar kita menginputkan url sendiri gimana gan? jadi nnti pas kita inputkan terus ada tombol generate, dan setelah klik tombol generate maka langsung terbuat kode qr code berdasarkan dari inputan yang kita buat

    • Christian Rosandhy

      tinggal atur di $isi_text itu saja.. ganti dgn url yg diinginkan, selesai..


  • Nanang Supriyatna
    Mas saya mau tanya apa bisa atau ada aplikasi, misal saya mengscan QR code dari android tapi muncul inputanya masuk kedalam database mysql dan php/ masuk ke dalam laptop terimaksih mas 😊

  • Please LOGIN before if you want to give the comment.