Cara Termudah Membuat QR Code Dengan PHP

QR (Quick Respone) Code adalah sebuah teknologi 2 dimensi yang pertama kali diperkenalkan oleh Perusahaan Otomotif Jepang Denso Wave di tahun 1994. QR Code merupakan sebuah jenis barcode yang isi kodenya dapat dibaca dengan kecepatan tinggi. Teknologi QR Code dulunya digunakan dalam berbagai industri perdagangan dan jasa, namun seiring dengan perkembangannya QR Code juga dimanfaatkan dalam berbagai bidang.

Membuat QR Code dengan PHP

Untuk membuat sebuah kode QR dengan PHP sangatlah mudah, dengan menggunakan lbantuan ibrary seperti phpqrcode Anda bisa membuat Kode QR dengan mudah. Berikut ini adalah caranya :

  1. Silahkan terlebih dahulu Anda download library/pugins phpqrcode
  2. Selanjutnya extract library tersebut pada folder xampp atau folder projek masing - masing untuk digunakan sebagai latihan
  3.  Dalam contoh latihan ini saya mengektrak library phpqrcode ke folder xampp/htdocs/qrphp
  4. Buat sebuah file dengan nama file1.php untuk latihan dengan kode seperti berikut
    
       <?php
    require_once('phpqrcode/qrlib.php');
    # Menentukan lokasi akan menyimpan file qr
    $path = "folderqr/";
    # jika folder path pada $path  belum ada maka buat foldernya
    if(!file_exists($path))
    mkdir($path);
    #konten qr yang akan dirubah kedalam bentuk QR Code
    $konten_qr = 'https://root93.co.id'; 
      
    # Menyimpan dan membuat konten qr dengan nama test.png
    # Parameter QRcode::(konten_qr, folder, nama_file)
    QRcode::png($konten_qr,$path."test.png");
    # Menampilkan konten qr berdasarkan path
    echo "<img src='".$path."test.png'>";
    ?>
      
  5. Selanjutnya buat file latihan kedua dengan file2.php dengan isi kode sebagai berikut
    
      <?php
    require_once('phpqrcode/qrlib.php');
    # Menentukan lokasi akan menyimpan file qr
    $path = "folderqr/";
    # jika folder belum ada maka buat
    if(!file_exists($path))
    mkdir($path);
    #konten qr yang akan dirubah kedalam bentuk QR Code
    $konten_qr = 'https://root93.co.id'; 
      
    # Menyimpan QR kedalam beberapa level QR
    QRcode::png($konten_qr, $path.'006_L.png', QR_ECLEVEL_L); 
    QRcode::png($konten_qr, $path.'006_M.png', QR_ECLEVEL_M); 
    QRcode::png($konten_qr, $path.'006_Q.png', QR_ECLEVEL_Q); 
    QRcode::png($konten_qr, $path.'006_H.png', QR_ECLEVEL_H);
    
    echo '<h3>ECC Level QRCode</h3>';
    
    echo '<img src="'.$path.'006_L.png" />'; 
    echo '<img src="'.$path.'006_M.png" />'; 
    echo '<img src="'.$path.'006_Q.png" />'; 
    echo '<img src="'.$path.'006_H.png" />'; 
    ?>
     
    
      
  6. Dalam kode diatas ada tambahan parameter QR_ECLVEL, parameter tersebut digunakan untuk tingkat koreksi kesalahan dimana
    QR_ECLEVEL_L = pemulihan kehilangan data hingga 7%
    QR_ECLEVEL_M = pemulihan kehilangan data 15%
    QR_ECLEVEL_Q = pemulihan hingga 25% kehilangan data
    QE_ECLEVEL_H = pemulihan hingga 30% kehilangan data
  7. Selanjutnya buat file ketiga dengan nama file3.php seperti berikut
    
      <?php
    require_once('phpqrcode/qrlib.php');
    # Menentukan lokasi akan menyimpan file qr
    $path = "folderqr/";
    # jika folder belum ada maka buat
    if(!file_exists($path))
    mkdir($path);
    $konten_qr = 'https://root93.co.id'; 
      
    # Menyimpan QR kedalam beberapa jenis pixel
    QRcode::png($konten_qr, $path.'pixel_1.png', QR_ECLEVEL_L,1); 
    QRcode::png($konten_qr, $path.'pixel_2.png', QR_ECLEVEL_L,2); 
    QRcode::png($konten_qr, $path.'pixel_3.png', QR_ECLEVEL_L,3); 
    QRcode::png($konten_qr, $path.'pixel_4.png', QR_ECLEVEL_L,4);
    
    echo '<h3>UKuran QR Dalam Pixel</h3>';
    
    echo '<img src="'.$path.'pixel_1.png" />'; 
    echo '<img src="'.$path.'pixel_2.png" />'; 
    echo '<img src="'.$path.'pixel_3.png" />'; 
    echo '<img src="'.$path.'pixel_4.png" />'; 
    ?>
     
    
      
  8. Dalam kode diatas terlihat tambahan paramter 1-4 setelah QR_ECLEVEL_L, hal tersebut merupakan parameter untuk mendefinisikan ukuran pixel yang nanti akan dihasilkan dari QR Code yang berhasil dibuat.
  9. Selain ukuran pixel, ukuran frame yang dihasilkan juga bisa diatur dengan menambahkan parameter seperti yang bisa Anda lihat pada contoh berikut
    
      <?php
    require_once('phpqrcode/qrlib.php');
    # Menentukan lokasi akan menyimpan file qr
    $path = "folderqr/";
    # jika folder belum ada maka buat
    if(!file_exists($path))
    mkdir($path);
    #konten qr yang akan dirubah kedalam bentuk QR Code
    $konten_qr = 'https://root93.co.id'; 
      
    # Menyimpan QR menjadi beberapa jenis dengan ukuran frame berbeda beda dengan pixel 3
    
    QRcode::png($konten_qr, $path.'frame_4.png', QR_ECLEVEL_L,3,4);
    QRcode::png($konten_qr, $path.'frame_6.png', QR_ECLEVEL_L,3,6);
    QRcode::png($konten_qr, $path.'frame_10.png', QR_ECLEVEL_L,3,10);
    echo '<h3>UKuran QR Dalam frame</h3>';
    
    
    echo '<img src="'.$path.'frame_4.png" />';
    echo '<img src="'.$path.'frame_6.png" />'; 
    echo '<img src="'.$path.'frame_10.png" />';
    ?>
     
    
      
  10. Dalam kode diatas terlihat ditambahkan beberapa paramter angka setelah mendefinisikan untuk ukuran pixel yaitu 4,6,10. Nilai tersebut adalah untuk mendefinisikan nilai atau ukuran frame/bingkai QR yang dihasilkan

Untuk melihat hasil dari QR Code yang telah Anda buat, Anda bisa langsung menjalankan kode - kode diatas pada browser

Untuk terakhir Saya akan memberikan sebuah contoh bagaimana mengenerate atau menghasilkan QR Code melalui sebuah formulir / from html, dimana nantinya Anda bisa mengatur isi, ukuran/pixel, frame dan ECLEVEL nya dengan mengisinya mellaui form html tersebut sehingga Anda tidak perlu mengesetnya secara manual melalui kode.

Berikut adalah contohnya, silahkan simpan dalam bentuk file misal index.php

<?php
	require_once('phpqrcode/qrlib.php');
	
	$err = array();

	$path ="pathqr/";
			if(!file_exists($path))
				mkdir($path);
	if(isset($_POST['generate_qr']))
	{
		if(empty($_POST['konten_qr']))
		{
			array_push($err, 'Masukan konten qr');
		}
		else
		{
			$konten_qr=$_POST['konten_qr'];
		}
		if(empty($_POST['level']))
		{
			array_push($err, 'Pilih level qr');
		}
		else
		{
			$level = $_POST['level'];
		}
		if(empty($_POST['pixel']))
		{
			array_push($err, 'Masukan ukuran dalam pixel');
		}
		else
		{
			$pixel = $_POST['pixel'];
		}
		if(empty($_POST['frame']))
		{
			array_push($err, 'Masukan ukuran frame');
		}
		else
		{
			$frame = $_POST['frame'];
		}
		
		if(count($err)==0)
		{
			
			QRcode::png($konten_qr, $path.'hasil_generate.png',$level, $pixel, $frame);
		}
		if(count($err)>0)
		{
			foreach ($data as $error) {
				echo  $error;
			}
		}

	}
?>
<!DOCTYPE html>
<html>
<head>
	<title>Root93.co.id - Membuat QR Code Dengan PHP</title>
	<style type="text/css">
		table.items {
		  font-size: 12pt; 
		  border-collapse: collapse;
		  border: 3px solid #880000; 
		}
		td { vertical-align: top; 
		}
		table thead th { background-color: #EEEEEE;
		  text-align: center;
		}
		table tfoot td { background-color: #AAFFEE;
		  text-align: center;
		}
		.container{ margin: 15px; }
		
	</style>
</head>
<body>
<div class="container" align="center">
	<form action="<?=$_SERVER['PHP_SELF']?>" method="post">	
		<table class="items" width="50%" cellpadding="8" border="1">
			<thead>
				<th colspan="5"><h3>Membuat QR COde Dengan PHP - ROOT93</h3></th>
			</thead>
			<tr>
				<td><input type="text" name="konten_qr" placeholder="https://root93.co.id" required="" /></td>
				<td>
					<select name="level">
						<option value="QR_ECLEVEL_L">QR_ECLEVEL_L</option>
						<option value="QR_ECLEVEL_M">QR_ECLEVEL_M</option>
						<option value="QR_ECLEVEL_Q">QR_ECLEVEL_Q</option>
						<option value="QR_ECLEVEL_H">QR_ECLEVEL_H</option>
					</select>
				</td>
				<td><input type="text" name="pixel" placeholder="pixel ex: 3" required="" /></td>
				<td><input type="text" name="frame" placeholder="frame ex: 4" required="" /></td>
				<td><input type="submit" value="simpan" name="generate_qr" /></td>
			</tr>
		</table>
	</form>
	</table>
	<h3>Hasil Generate</h3>
	<img src="<?=$path?>/hasil_generate.png" alt="hasil_generate"/>

	
</div>
</body>
</html>



cara membuat qr code dengan php

0 Response to "Cara Termudah Membuat QR Code Dengan PHP"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin