Cara membuat id otomatis di phpmyadmin

Kode Otomatis yang saya maksud disini adalah sebuah sistem penomoran yang memiliki format tertentu, misalnya sebuah faktur penjualan memiliki kode 20171243001 atau sebuah data barang memiliki kode BR001. pada tutorial kali ini kita akan belajar membuat kode otomatis dengan menggunakan bahasa pemograman PHP dan Database MySQL.

Membuat Database Dan Tabel

Sebelum kita masuk kedalam tahapan membuat script kode otomatis dengan PHP, terlebih dahulu kita harus menyiapkan tabel yang akan kita gunakan untuk menyimpan data nantinya, dalam kasus ini kita akan membuat sebuah tabel barang yang memiliki field kode_barang dan nama barang seperti dibawah ini :

Cara membuat id otomatis di phpmyadmin

Jika anda ingin cepat dalam proses pembuatan tabel nya silahkan gunakan query berikut ini :

CREATE TABLE IF NOT EXISTS `tbl_barang` (
`kode_barang` varchar(20) NOT NULL,
`nama_barang` varchar(40) NOT NULL,
PRIMARY KEY (`kode_barang`)
)

Script Membuat Kode Otomatis Dengan PHP

Sekarang kita akan membuat script untuk menggenerate kode otomatis, tapi karena kode tersebut nanti akan berhubungan dengan database maka kita akan buat script untuk koneksinya terlebih dahulu, silahkan buat sebuah file baru dengan nama koneksi.php dan tulis lah script berikut ini :

<?php
$host       =   "localhost";
$user       =   "root";
$password   =   "";
$database   =   "tutorial";
$connect = mysqli_connect($host, $user, $password, $database);
?>

silahkan sesuaikan konfigurasi di atas dengan konfigurasi web werver anda, lalu jika sudah silahkan buat sebuah file baru dengan nama kode-otomatis.php dan tulis script berikut :

<?php

include "koneksi.php";
// mencari kode barang dengan nilai paling besar
$query = "SELECT max(kode_barang) as maxKode FROM tbl_barang";
$hasil = mysqli_query($connect,$query);
$data = mysqli_fetch_array($hasil);
$kodeBarang = $data['maxKode'];

// mengambil angka atau bilangan dalam kode anggota terbesar,
// dengan cara mengambil substring mulai dari karakter ke-1 diambil 6 karakter
// misal 'BRG001', akan diambil '001'
// setelah substring bilangan diambil lantas dicasting menjadi integer
$noUrut = (int) substr($kodeBarang, 3, 3);

// bilangan yang diambil ini ditambah 1 untuk menentukan nomor urut berikutnya
$noUrut++;

// membentuk kode anggota baru
// perintah sprintf("%03s", $noUrut); digunakan untuk memformat string sebanyak 3 karakter
// misal sprintf("%03s", 12); maka akan dihasilkan '012'
// atau misal sprintf("%03s", 1); maka akan dihasilkan string '001'
$char = "BRG";
$kodeBarang = $char . sprintf("%03s", $noUrut);
echo $kodeBarang;
?>

sekarang waktunya melakukan testing, silahkan akses file kode-otomatis memalui web browser anda dan jika script yang anda tulis benar maka akan muncul seperti dibawah ini :

Cara membuat id otomatis di phpmyadmin

sekian tutorial tentang cara membuat kode otomatis dengan bahasa pemograman PHP Dan MySQL.

Download Script Kode Otomatis Dengan PHP MySQL

Cara membuat id otomatis di phpmyadmin

Nuris Akbar SST, M.Kom

Senior Backend Web Developer Dengan Pengalaman Lebih Dari 8 Tahun, Sekarang Menjadi CTO Di Startup Globalvillage, Founder Academy Diigtal Dan Instruktur Training Di PT Brainamtics Cipta Informatika.

Baca Artikel Terkain Menarik Lain:


auto increament dengan prefix pada mysql

untuk membuat id pada tabel yang otomatis bertambah setiap kali record baru di tambahkan ,kita dapat menggunakan fungsi Auto increament yang diatur pada saat membuat tabel,
id otomatis ini biasanya berupa angka integer, misal 001, 002, dst…
bila kita menginginkan id otomatis dengan prefik, seperti: abc001, abc002, dst
maka hal ini dapat dilakukan dengan menambahkan trigger pada tabel.
berikut ini akan diberikan contoh pembuatannya, pengguna dapat memodifikasinya sesuai kebutuhan

untuk itu diperlukan tambahan 1 tabel pembantu untuk menghasilkan angka yang berurutan
contoh membuat tabel utama(tabel1) dan tabel pembantu(tabel1_seq):

CREATE TABLE table1_seq
(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
CREATE TABLE table1
(
id VARCHAR(7) NOT NULL PRIMARY KEY DEFAULT ‘0’, name VARCHAR(30)
);

untuk membuat triggernya:

DELIMITER $$
CREATE TRIGGER tg_table1_insert
BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
INSERT INTO table1_seq VALUES (NULL);
SET NEW.id = CONCAT(‘LHPL’, LPAD(LAST_INSERT_ID(), 3, ‘0’));
END$$
DELIMITER ;
sebelum menjalankan triger, kita perlu mengganti tanda delimiter pada kotak kecil dibawah kotak sql, yang awalnya berisi; diganti dengan $$

selanjutnya silahkan menambahkan data pada tabel1, tanpa mengisi field id, misal:

INSERT INTO Table1 (name) 
VALUES ('Jhon'), ('Mark'); hasil pada tabel1 akan menjadi:
|      ID | NAME |
------------------
| LHPL001 | Jhon |
| LHPL002 | Mark |