Selamat datang kembali di blog Mari belajar coding. Pada tutorial kali ini kita akan belajar bagaimana cara membuat QR Code menggunakan PHP. Apa itu QR Code? QR Code atau Quick Response Code merupakan sebuah barcode dua dimensi yang diperkenalkan oleh perusahaan otomotif Jepang Denso Wave pada tahun 1994. Jenis barcode ini awalnya digunakan dalam berbagai industri perdagangan dan jasa. Pada dasarnya QR Code dikembangkan sebagai suatu kode yang memungkinkan isinya dapat diterjemahkan dengan kecepatan tinggi.
Membuat QR Code dengan PHP
1. Download library phpqrcode terlebih dahulu.
2. Buat folder di dalam directory xampp/htodcs dengan nama latihan-qrcode.
3. Ekstrak phpqrcode.zip di dalam directory xampp/htdocs/latihan-qrcode.
4. Buat file bernama latihan1.php . Salin kode berikut ini.
<?php
include "phpqrcode/qrlib.php";
//isi qrcode jika di scan
$codeContents = 'https://www.maribelajarcoding.com';
//output gambar langsung ke browser, sebagai PNG
QRcode::png($codeContents);
?>
Keterangan:
baris kedua untuk memanggil library phpqrcode.
baris kelima merupakan isi dari qrcode jika di scan.
baris kedelapan untuk menampilkan gambar qrcode langsung di browser sebagai PNG.
5. Untuk menyimpan file QRcode caranya mudah, buat file bernama latihan2.php. Salin kode diberikut.
<?php
include "phpqrcode/qrlib.php";
$tempdir = "temp/"; //Nama folder tempat menyimpan file qrcode
if (!file_exists($tempdir)) //Buat folder bername temp
mkdir($tempdir);
//isi qrcode jika di scan
$codeContents = 'https://www.maribelajarcoding.com';
//simpan file kedalam folder temp dengan nama 001.png
QRcode::png($codeContents,$tempdir."001.png");
echo '<h2>Simpan File QRCode</h2>';
//menampilkan file qrcode
echo '<img src="'.$tempdir.'001.png" />';
?>
Keterangan:
Baris kelima sampai dengan tujuh berfungsi untuk membuat folder bernama temp.
Baca juga Membuat Barcode dengan PHP
Baris ke tiga belas berfungsi untuk membuat file qrcode yang nantinya akan di simpan di folder temp. Parameter pertama merupakan isi dari qrcode dan parameter kedua untuk menyimpan file qrcode di folder temp dengan nama 001.png.
6. QR Code mendukung empat tingkat koreksi kesalahan untuk memungkinkan pemulihan data yang hilang, salah dibaca, atau dikaburkan. Buat file bernama latihan3.php kemudian salin kode berikut ini untuk lebih jelasnya.
<?php
include "phpqrcode/qrlib.php";
$tempdir = "temp/"; //Nama folder tempat menyimpan file qrcode
if (!file_exists($tempdir)) //Buat folder bername temp
mkdir($tempdir);
//isi qrcode jika di scan
$codeContents = 'https://www.maribelajarcoding.com';
//simpan file kedalam temp
QRcode::png($codeContents, $tempdir.'006_L.png', QR_ECLEVEL_L);
QRcode::png($codeContents, $tempdir.'006_M.png', QR_ECLEVEL_M);
QRcode::png($codeContents, $tempdir.'006_Q.png', QR_ECLEVEL_Q);
QRcode::png($codeContents, $tempdir.'006_H.png', QR_ECLEVEL_H);
echo '<h2>ECC Level QRCode</h2>';
//menampilkan file qrcode
echo '<img src="'.$tempdir.'006_L.png" />';
echo '<img src="'.$tempdir.'006_M.png" />';
echo '<img src="'.$tempdir.'006_Q.png" />';
echo '<img src="'.$tempdir.'006_H.png" />';
?>
Keterangan:
Parameter ketiga merupakan tingkat koreksi kesalahan.
QR_ECLEVEL_L - Memungkinkan pemulihan hingga 7% kehilangan data
QR_ECLEVEL_M - Memungkinkan pemulihan hingga 15% kehilangan data
QR_ECLEVEL_Q - Memungkinkan pemulihan hingga 25% kehilangan data
QR_ECLEVEL_H - Memungkinkan pemulihan hingga 30% kehilangan data
7. Teman-teman bisa mengganti ukuran pixel dengan menambahkan parameter keempat. Buat file bernama latihan4.php kemudian salin kode berikut.
<?php
include "phpqrcode/qrlib.php";
$tempdir = "temp/"; //Nama folder tempat menyimpan file qrcode
if (!file_exists($tempdir)) //Buat folder bername temp
mkdir($tempdir);
//isi qrcode jika di scan
$codeContents = 'https://www.maribelajarcoding.com';
//simpan file kedalam temp
//parameter ke empat ukuran pixel qrcode
QRcode::png($codeContents, $tempdir.'007_1.png', QR_ECLEVEL_L, 1);
QRcode::png($codeContents, $tempdir.'007_2.png', QR_ECLEVEL_L, 2);
QRcode::png($codeContents, $tempdir.'007_3.png', QR_ECLEVEL_L, 3);
QRcode::png($codeContents, $tempdir.'007_4.png', QR_ECLEVEL_L, 4);
echo '<h2>Ukuran Pixel QRCode</h2>';
//menampilkan file qrcode
echo '<img src="'.$tempdir.'007_1.png" />';
echo '<img src="'.$tempdir.'007_2.png" />';
echo '<img src="'.$tempdir.'007_3.png" />';
echo '<img src="'.$tempdir.'007_4.png" />';
?>
8. Teman-teman juga bisa mengganti ukuran frame qrcode. Ukuran frame memungkinkan untuk memberi jarak antara tepi background yang berwarna putih dengan qrcode yang berwarna hitam. Untuk mengganti frame cukup dengan menambahkan parameter kelima. Buat file bernama latihan5.php.
<?php
include "phpqrcode/qrlib.php";
$tempdir = "temp/"; //Nama folder tempat menyimpan file qrcode
if (!file_exists($tempdir)) //Buat folder bername temp
mkdir($tempdir);
//isi qrcode jika di scan
$codeContents = 'https://www.maribelajarcoding.com';
//simpan file kedalam temp
//nilai konfigurasi Frame di bawah 4 tidak direkomendasikan
QRcode::png($codeContents, $tempdir.'008_4.png', QR_ECLEVEL_L, 3, 4);
QRcode::png($codeContents, $tempdir.'008_6.png', QR_ECLEVEL_L, 3, 6);
QRcode::png($codeContents, $tempdir.'008_12.png', QR_ECLEVEL_L, 3, 10);
echo '<h2>Ukuran Frame QRCode</h2>';
// displaying
echo '<img src="'.$tempdir.'008_4.png" />';
echo '<img src="'.$tempdir.'008_6.png" />';
echo '<img src="'.$tempdir.'008_12.png" />';
?>
Keterangan:
Parameter kelima merupakan nilai konfigurasi frame. Nilai konfigurasi frame dibawah 4 tidak di rekomendasikan.
9. Buat sebuah form untuk generate qrcode dan menyimpan data qrcode ke database. Buat file bernama latihan6.php
<!DOCTYPE html>
<html>
<head>
<title>maribelajarcoding.com</title>
</head>
<body>
<div align="center">
<h2>Generate File QRCode</h2>
<form method="POST">
<table>
<tr>
<td valign="top">Content</td>
<td><input type="text" name="content" id="content"></td>
</tr>
<tr>
<td valign="top"></td>
<td><input type="submit" name="simpan" value="Generate"></td>
</tr>
</table>
</form>
<?php
if (isset($_POST['simpan'])) {
include "phpqrcode/qrlib.php";
$tempdir = "temp/"; //Nama folder tempat menyimpan file qrcode
if (!file_exists($tempdir)) //Buat folder bername temp
mkdir($tempdir);
//isi qrcode jika di scan
$codeContents = $_POST['content'];
//nama file qrcode yang akan disimpan
$namaFile=$_POST['content'].".png";
//ECC Level
$level=QR_ECLEVEL_H;
//Ukuran pixel
$UkuranPixel=10;
//Ukuran frame
$UkuranFrame=4;
QRcode::png($codeContents, $tempdir.$namaFile, $level, $UkuranPixel, $UkuranFrame);
echo '<img src="'.$tempdir.$namaFile.'" />';
}
?>
<br>
<a href="https://www.maribelajarcoding.com" target="_blank">maribelajarcoding.com</a>
</div>
</body>
</html>
Tutorial membuat QR Code dengan PHP sampai disini. Untuk selanjutnya kita akan belajar membuat QR Code dengan logo menggunakan PHP. Sekian, semoga bermanfaat.
Baca juga: Membuat QR Code dengan Logo Menggunakan PHP
Source code:
latihan-qrcode.rar
Baca juga: Membuat QR Code dengan Logo Menggunakan PHP
Source code:
Related search:
Membuat QR Code dengan PHP
Membuat QR Code dengan PHP Mysql
Menyisipkan logo di QR Code dengan PHP