Anda di halaman 1dari 4

Mudahnya Membuat Barcode dengan PHP

Posted By rosihanari On February 7, 2009 @ 5:50 pm In PHP,Programming | Comments Disabled

Pada artikel kali ini saya akan mencoba membahas bagaimana membuat barcode dengan script PHP.
Mudah-mudahan hal ini bisa membantu rekan-rekan dan juga khususnya para member [1] yang
kesulitan membuatnya.

Eh… sebelum kita bahas bagaimana cara membuat script untuk mengenerate barcode ini pada studi
kasus, ada baiknya kita tinjau terlebih dahulu tentang barcode.

Apa sih barcode itu? Barcode adalah suatu simbol berbentuk garis-garis yang menyatakan suatu kode
atau string karakter. Simbol ini dapat dibaca oleh suatu barcode scanner. Salah satu contoh barcode
adalah simbol yang ada di produk di toko atau supermarket yang sering kita lihat.

Ternyata… di dunia ini ada banyak sekali tipe barcode. Diantara sekian banyak tipe barcode, terdapat
6 kategori barcode berdasarkan kegunaannya, yaitu: barcode untuk keperluan retail, barcode untuk
keperluan packaging, barcode untuk penerbitan, barcode untuk keperluan farmasi, barcode untuk
keperluan non retail, serta barcode untuk keperluan lain.

Barcode untuk keperluan retail, salah satu contohnya adalah UPC (Universal Price Codes), biasanya
digunakan untuk keperluan produk yang dijual di supermarket. Barcode untuk packaging biasanya
digunakan untuk pengiriman barang, dan salah satunya adalah barcode tipe ITF. Barcode untuk
keperluan penerbitan, sering digunakan pada penerbitan suatu produk, misalkan barcode yang
menunjukkan ISSN suatu buku. Sedangkan barcode untuk keperluan farmasi biasanya digunakan
untuk identifikasi suatu produk obat-obatan. Salah satu barcode farmasi adalah barcode jenis HIBC.
Sedangkan barcode untuk kepentingan non retail, misalkan barcode untuk pelabelan buku-buku yang
ada di perpustakaan. Salah satu tipe barcode untuk keperluan non retail ini adalah Code 39.

Referensi :
http://www.agamik.co.uk [2]
http://www.makebarcode.com/specs/code_39.html [3]

Nah… pada pada artikel ini, saya hanya akan memfokuskan saja pada barcode Code 39. Barcode ini
diperkenalkan oleh ANSI (American National Standards Institute). Karakter yang bisa dinyatakan ke
dalam Code 39 meliputi digit angka 0-9, huruf kapital A-Z, karakter spasi, karakter ‘-’, ‘+’, ‘.’, ‘$’ dan
‘/’. Berikut ini adalah salah satu contoh tampilah barcode Code 39 untuk mensimbolkan suatu string
‘ROSIHAN ARI 1979′.

[4]

Untuk menyatakan suatu karakter atau string ke dalam bentuk barcode Code 39, caranya adalah
mengapit string tersebut dengan tanda asterisk (*). Sehingga pada contoh di atas, string ‘ROSIHAN
ARI 1979′ ini harus diapit dengan tanda asterisk menjadi ‘*ROSIHAN ARI 1979*’. Apa akibatnya jika
tidak diapit dengan asterisk? Simbol yang muncul nantinya tidak akan bisa dibaca oleh barcode
scanner.

OK… saya kira cukup pembahasan mengenai barcode, khususnya jenis Code 39 ini. Nah… kembali
pada cara pembuatan barcode. Pembuatan barcode yang akan dibahas hanya akan difokuskan pada
Code 39 yang diterapkan pada studi kasus pelabelan buku di perpustakaan.
Pertanyaan pertama yang mungkin ada dalam benak Anda adalah bagaimana menciptakan simbol
barcode, khususnya untuk Code 39. Ya… good question.

Untuk membuat barcode Code 39, Anda bisa membeli suatu software untuk mengeneratenya. Beli???
Wah… gak ada uang tuh… So… gimana donk?? He..3x, jangan khawatir karena meskipun Anda tidak
punya uang, Anda tetap bisa membuatnya yaitu dengan mendownload True Type Font (TTF) khusus
untuk barcode Code 39 ini. Free kah font ini? Ya… 100% free buat Anda. Dimanakah downloadnya?
OK.. akan saya bocorkan kepada Anda link untuk downloadnya yaitu di bawah ini

Download TTF Code 39 [5]

Setelah Anda download, selanjutnya installah ke direktori font pada sistem operasi Anda. Jika Anda
menggunakan Windows, installah ke direktori C:\WINDOWS\FONTS. OK… hanya itu caranya. Trus…
bagaimana cara menggunakannya?

OK… sekarang kita terapkan ke studi kasus untuk membuat label barcode yang menyatakan kode-
kode buku yang ada di perpustakaan. Diharapkan nantinya kode barcode ini akan ditempelkan pada
setiap buku dan dimanfaatkan untuk mempermudah transaksi di perpustakaan. Ketika proses
peminjaman atau pengembalian buku, petugas perpustakaan tidak perlu mengetikkan kode buku
secara manual di komputer namun hanya
melakukan scanning pada label barcode ini.

Nah… kita mulai membuatnya. Pertama-tama kita siapkan database dan tabel untuk keperluan
penyimpanan data buku perpustakaan. Ini salah satu contoh query untuk membuat tabel dan
datanya:

CREATE TABLE buku (


kodeBuku varchar(5),
judulBuku text,
author varchar(20),
jenis varchar(10),
PRIMARY KEY (kodeBuku)
);
INSERT INTO `buku` VALUES ('A0001', 'Pemrograman Pascal', 'Rosihan Ari
Yuana', 'Referensi');
INSERT INTO `buku` VALUES ('A0002', 'Pemrograman PHP', 'Dwi Amalia Fitriani',
'Referensi');
INSERT INTO `buku` VALUES ('A0003', 'Pengantar Jaringan Komputer', 'Faza
Fauzan Kh.', 'Referensi');
INSERT INTO `buku` VALUES ('A0004', 'Teknologi Digital', 'Nada Hasanah',
'Referensi');
INSERT INTO `buku` VALUES ('A0005', 'Pemrograman ASP .NET', 'Muh. Ahsani
Taqwim', 'Referensi');

OK… dari SQL di atas dapat Anda lihat terdapat sampel buku sejumlah 5 buah. He.. 3x semua anggota
keluarga saya ternyata para pengarang buku

Nah… bagaimana cara membuat script PHP untuk mengenerate label barcode dari kode semua buku di
atas? Bentar… sabar… sebelum kita mulai buat, kita hendaknya pikirkan desain tampilan outputnya.

Misalkan kita ingin nantinya muncul label barcode kode buku yang disusun seperti halnya tabel yang
memiliki 2 kolom. Trus… untuk setiap barcode, bagian bawahnya akan terdapat kode buku yang dapat
dibaca oleh kita. Mengapa kode buku ini ikut tercantum di bawah barcodenya? Ya… siapa tahu suatu
saat barcode scannernya rusak. Bila label barcode ini tidak ada kode buku yang bisa kita baca, bisa-
bisa kesulitan untuk mendatanya ketika transaksi di perpustakaan berlangsung.
OK… itu desain tampilannya. Now… let’s start to create the script!

<?php

// koneksi ke database
mysql_connect("dbhost", "dbuser", "dbpass");
mysql_select_db("dbname");

$query = "SELECT * FROM buku";


$hasil = mysql_query($query);

// setting banyaknya kolom


$kolom = 2;

// membuat tabel berisi label barcode


echo "<table border='1'>";

$counter = 1;
while ($data = mysql_fetch_array($hasil))
{
if (($counter-1) % $kolom == 0) echo "<tr>";
echo "<td align='center' style='padding: 5px'><font face='Free 3 of 9'
size='20'>*".$data['kodeBuku']."*</font><br />".$data['kodeBuku']."</td>";
if ($counter % $kolom == 0) echo "</tr>";
$counter++;
}

echo "</table>";
?>

Konsep membuat label berisi barcode ke dalam bentuk tabel 2 kolom ini adalah sebagai berikut

Secara umum, apabila kita membuat tabel dengan n buah kolom maka struktur htmlnya adalah
seperti di bawah ini:

<table>
<tr><td>...</td><td>...</td><td>...</td>... (akan diulang n kali)</tr>
<tr><td>...</td><td>...</td><td>...</td>... (akan diulang n kali)</tr>
.
.
.
</table>

Nah… dari struktur di atas tampak bahwa untuk setiap baris tabel terdapat n kali tag <td>…</td>
yang diulang. Begitu sudah terdapat n kali, maka akan membentuk baris baru dan langkah yang sama
akan diulangi lagi.

Dalam pemrograman, untuk mengimplementasikan ide di atas, kita bisa menggunakan bantuan suatu
counter. Counter ini akan berjalan mulai dari 1, 2, 3, … hingga sejumlah data yang diinginkan. Bila
counter telah mencapai bilangan yang merupakan kelipatan n, maka baris tabel akan diakhiri (cetak
</tr>) dan selanjutnya membuat baris tabel baru (cetak <tr>), lihat baris 19 dan 21 pada script PHP
di atas.

Oya… untuk mengenerate suatu string menjadi kode barcode Code 39 menggunakan TTF yang telah
kita download di atas caranya adalah gunakan tag
<font face="Free 3 of 9" size="...">...</font>

dengan atribut ‘size’ nantinya akan diisi dengan value yang menyatakan ukuran simbol barcode. Pada
contoh script di atas menggunakan size=”20″.

Oya… jangan lupa mengaapit string yang akan dibuat barcodenya dengan tanda asterisk (*).

Hasil output dari script di atas adalah seperti di bawah ini:

[6]

So… tinggal print saja output di atas, bisa juga langsung diprint di atas stiker label, namun terlebih
dahulu Anda atur posisinya dan sesuaikan panjang lebarnya dengan stiker label.

Fiuh… jadi juga akhirnya script dan artikel ini. Panjang sekali yah artikelnya…. but anyway… mudah-
mudahan ada manfaatnya buat Anda semuanya.