Script PHP - Validasi Kartu Kredit Dengan Algoritma Luhn

DailyBlog.id - Di jaman sekarang pasti penggunaan Kartu Kredit atau Credit Card sering dilakukan, apa lagi penggunaannya di e-commerce. Namun, angka-angka pada kartu kredit tersebut biasanya panjang, sering kali kesalahan saat melakukan pengetikkan. Dalam kasus tersebut untuk mengidentifikasi kesalahan nomor Kartu Kredit atau Credit Card, situs e-commerce atau tempat pembelanjaan lainnya menggunakan algoritma yaitu algoritma checksum yang digunakan untuk memverifikasi nomor Kartu Kredit atau Credit Card.

Dari salah satu algoritma checksum yaitu Algoritma Luhn yang digunakan untuk mendeteksi kesalahan dalam penulisan atau pengetikkan nomor Kartu Kredit. Sebagai contoh persyaratan dari Algoritma Luhn yaitu:

  1. Dari digit paling kanan, kita harus menggandakan (dikali 2) setiap digit kedua. Jika kelipatannya lebih besar dari 9, maka jumlahkan kedua angkanya sehingga angka akhirnya adalah satu angka.
  2. Sekarang jumlahkan semua angka dalam angka, angka yang tidak berubah dan angka yang digandakan.
  3. Jumlah akhir harus kelipatan 10 atau mod (%) 10 dari angka harus 0. Jika tidak maka itu bukan nomor kartu kredit yang valid.


Sebagai contoh nomor kartu kredit 12345678903555.

Digit: 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 3, 5, 5, 5
Setelah digandakan: 2, 2, 6, 4, 1, 6, 5, 8, 9, 0, 6, 5, 1, 5 
Jumlah digit: 2 + 2 + 6 + 4 + 1 + 6 + 5 + 8 + 9 + 0 + 6 + 5 + 1 + 5 = 60 = 6 * 10 dan karenanya nomor kartu kredit yang valid.

Maka untuk melakukan pengecekkan dengan menggunakan algoritma luhn, kalian bisa copas script yang ada dibawah ini:

<?php

$nomerKartuKredit   = '12345678903555';
$jumlah             = $angka = $i = 0;

echo 'Nomor Credit Card: '.$nomerKartuKredit.'<br/><br/>';

while($nomerKartuKredit > 0)
{
    $angka = $nomerKartuKredit % 10;
    $nomerKartuKredit = $nomerKartuKredit / 10;
    
    if ($i % 2 != 0) // Ganjil di kali 2
        $angka *= 2;
    
    if ($angka > 9) // kalau lebih dari 9
        $angka = ($angka % 10) + 1;
    else
        $angka *= 1;
    
    $jumlah += $angka; // lakukan penjumlahan
    $i++;
}

$output = $jumlah % 10 == 0 ? 'Kartu kredit telah benar' : 'Pastikan kartu kredit sudah benar!';

echo $output;

?>


Maka untuk hasil program dari script php di atas, akan seperti ini:

Script PHP - Validasi Kartu Kredit Dengan Algoritma Luhn (Validasi Benar)



Script PHP - Validasi Kartu Kredit Dengan Algoritma Luhn (Validasi Salah)


Nah begitulah cara melakukan validasi kartu kredit dengan Algoritma Luhn menggunakan Script PHP.

Mungkin sampai disini saja artikel dari saya, semoga artikel yang saya berikan ini dapat bermanfaat bagi kalian dan dapat dikembangkan oleh kalian nantinya. Jika saya ada salah kata atau salah pengetikkan, saya mohon maaf. Sekian, dan terima kasih.

Previous Post Next Post