Halo, pada kali ini saya akan membuat catatan tentang cara membuat Barcode Generator menggunakan PHP dan data MySQL, script generate barcodenya saya pakai barcode128.php yang mana ini buatan orang juga (hehe). Untuk pengaplikasiannya baru lah saya sesuaikan dengan kebutuhan saya, bagi sobat yang perlu silahkan dipakai dan disesuaikan dengan kebutuhan masing-masing.
Saya kasih gambaran program yang saya buat menggunakan script generate barcode tersebut,
Pada halaman interface inputnya saya inputkan kode yang akan digenerate menjadi kode barcode, kemudian jumlah berapa buah barcode yang akan ditampilkan dalam sekali cetak. Jika tombol Print di klik maka akan tampil halaman print seperti ini :
Script untuk cetak barcode tersebut adalah :
<body onLoad="javascrip:window:print()"> <?php include('barcode128.php'); // include php barcode 128 class include "koneksi.php"; // koneksi ke database $kolom = 5; // jumlah kolom $copy = $_GET['jumlah']; // jumlah copy barcode $counter = 1; // sql query ke database $sql_barcode = "SELECT * FROM as_produk WHERE idproduk='$_GET[kode]' AND idkategori='$_GET[idk]'"; $baca_barcode = mysql_query($sql_barcode) or die ("Gagal Query".mysql_error()); $data_barcode = mysql_fetch_array($baca_barcode); //menampilkan hasil generate barcode echo" <table cellpadding='10'>"; for ($ucopy=1; $ucopy<=$copy; $ucopy++) { if (($counter-1) % $kolom == '0') { echo " <tr>"; } echo" <td class='merk'>".substr($data_barcode['namaproduk'],0,20).""; echo bar128(stripslashes($_GET['kode'])); echo "</td> "; if ($counter % $kolom == '0') { echo "</tr> "; } $counter++; } echo "</table> "; ?>
Untuk script generate barcode saya menggunakan library yang dibuat oleh Andrew Jakcson barcode128.php
<?php /* version 1.1 Code By Andrew Jackson Adapted From Dan Billeci dabilleci@hotmail.com USAGE: echo bar128( "MyBarCode123" [,Height In Pixels] ); /// PRINTS HTML IMG TABLE OF THE CODE Info From: http://www.barcode-1.net/pub/russadam/128code.html *///Define Constants: height is a constant in div.b128 as height of bars ?> <style> div.b128{ border-left: 1px black solid; height: 30px; } </style> <?php global $char128asc,$char128charWidth; $char128asc=' !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~'; $char128wid = array( '212222','222122','222221','121223','121322','131222','122213','122312','132212','221213', // 0-9 '221312','231212','112232','122132','122231','113222','123122','123221','223211','221132', // 10-19 '221231','213212','223112','312131','311222','321122','321221','312212','322112','322211', // 20-29 '212123','212321','232121','111323','131123','131321','112313','132113','132311','211313', // 30-39 '231113','231311','112133','112331','132131','113123','113321','133121','313121','211331', // 40-49 '231131','213113','213311','213131','311123','311321','331121','312113','312311','332111', // 50-59 '314111','221411','431111','111224','111422','121124','121421','141122','141221','112214', // 60-69 '112412','122114','122411','142112','142211','241211','221114','413111','241112','134111', // 70-79 '111242','121142','121241','114212','124112','124211','411212','421112','421211','212141', // 80-89 '214121','412121','111143','111341','131141','114113','114311','411113','411311','113141', // 90-99 '114131','311141','411131','211412','211214','211232','23311120' ); // 100-106 ////Define Function function bar128($text) { // Part 1, make list of widths global $char128asc,$char128wid; $w = $char128wid[$sum = 104]; // START symbol $onChar=1; for($x=0;$x<strlen($text);$x++) // GO THRU TEXT GET LETTERS if (!( ($pos = strpos($char128asc,$text[$x])) === false )){ // SKIP NOT FOUND CHARS $w.= $char128wid[$pos]; $sum += $onChar++ * $pos; } $w.= $char128wid[ $sum % 103 ].$char128wid[106]; //Check Code, then END //Part 2, Write rows $html=" <table cellpadding=0 cellspacing=0> <tr>"; for($x=0;$x<strlen($w);$x+=2) // code 128 widths: black border, then white space $html .= " <td> <div class=\"b128\" style=\"border-left-width:{$w[$x]};width:{$w[$x+1]}\"></div> "; return "$html <tr><td colspan=".strlen($w)." align=center><font face='Arial, Helvetica, sans-serif' size='1'><b>$text</table> "; } ?>
Sekian, jika ada yang ingin ditanyakan silahkan beri komentar di bawah.
Keep Calm and Stay Ngoding.
abc
kok ga bisa ?
admin
semuanya memang tidak saya jabarkan di tulisan ini, cocokkan form input dan databasenya dengan kebutuhan
aswar
mas bisa sher untuk file yg di atas
dE_lee
Kak bisa bantu saya bikin barcode tidak ?Kalo bisa tolong email ke saya dong ka.Saya sangat membutuhkan bantuan,karena sebentar lagi akan ada ujian praktek
Agus
bang admin boleh share lengkapnya tidak?
kurang paham saya masih newbi nih
Zedur
Bang admin, cara input value sesuai jumlah yang kita isikan biar prefix itu gimana mohon penjelasan nya?
adib
mantab tutorialnya, tinggal mnyesuaikan dengan kertas barcode yang di perlukan
zakki
bang kalo supaya bisa scan barcode gimana ?
admin
Pakai alat yg namanya barcode scanner.
Xymenes Marco
salam siang admin,kak bisa bantuan kirim file komplet di email saya karena sya butu bangan?