Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Javascript ile TC kimlik no doğrulama algoritması
#1
Kod:
<html>

<head>
    <meta charset="utf-8" />
    <title>Sayfa Başlığı</title>
</head>

<body>
    <input type="text" id="sayi" />
    <button onclick="f()">Hesapla</button>
  <div id="sonuc" style="padding: 10px 0px;"></div>
    <script>
        function f() {
            var i;
            var sayi = parseInt(document.getElementById("sayi").value);

            var tc_no = new Array();

            for (i = 10; i > 0; i--) {
                tc_no.push(parseInt(sayi / (Math.pow(10, i)) % 10));
            }

            tc_no.push(parseInt(sayi % 10));

            var toplam1 = 0, toplam2 = 0, tumtoplam = 0;
            var sonuc = "";

            if (tc_no[0] != 0) {
                for (i = 0; i < tc_no.length - 1; i += 2) {
                    toplam1 += tc_no[i];
                }
                toplam1 *= 7;
                for (i = 1; i < tc_no.length - 2; i += 2) {
                    toplam2 += tc_no[i];
                }
                if (tc_no[9] == (toplam1 - toplam2) % 10) {
                    for (i = 0; i < tc_no.length - 1; i++) {
                        tumtoplam += tc_no[i];
                    }
                    if (tumtoplam % 10 == tc_no[10]) {
                        sonuc = "<span style='color: green'>TC kimlik no doğru.</span>";
                    } else {
                      sonuc = "<span style='color: red'>TC kimlik no doğru değil.</span>";
                    }
                } else {
                    sonuc = "<span style='color: red'>TC kimlik no doğru değil.</span>";
                }
            } else {
                sonuc = "<span style='color: red'>TC kimlik no doğru değil.</span>";
            }
            document.getElementById("sonuc").innerHTML= sonuc;
        }
    </script>
</body>

</html>

Algoritmanın mantığı zaten basit. Kodlardan çıkarabilirsiniz.

(Güncellendi // 21.11.2020)
1
Ara
Cevapla PGM
Teşekkür verenler: Novruz , blackbear
#2
Bu şekilde olduğunu bilmiyordum açıkçası. Emeğine sağlık.

Kod:
TC. kimlik numaraları 11 basamaklı olup, sadece rakamlardan oluşur. İlk 9 rakam arasındaki formül 10.cu rakamı, ilk 10 rakam arasındaki formülasyon ise 11.ci rakamı oluşturur.
İlk rakam 0 olamaz.
1,3,5,7 ve 9.cu hanelerin toplamının 7 ile çarpımından 2,4,6, ve 8. haneler çıkartıldığında geriye kalan sayının 10'a göre modu 10. haneyi verir. (çıkarma işleminden elde edilen sonucun 10'a bölümünden kalan)
1,2,3,4,5,6,7,8,9 ve 10. sayıların toplamının 10'a göre modu (10'a bölümünden kalan) 11. rakamı sağlar.
Kaynak: https://www.hukuki.net/tckimlikdogrulama.php
Ücretli grafik tasarım işleriniz için özel mesaj yoluyla ulaşabilirsiniz.
"Hiçbir kuş, komşusundan daha fazla yuva yapmaya uğraşmadı; hiçbir tilki, saklanacak tek bir kovuk bana yetmez! diye kendini harap etmedi; hiçbir sincap bir değil de iki kış yetecek kadar ceviz biriktiremediği için endişeden ölmedi ve hiçbir köpek yaşlılık yılları için biriktirmiş kemiği olmadığını dert ederek uykusuz kalmadı."

oyPjvR.png
Ara
Cevapla PGM
Teşekkür verenler:
#3
TC kimlik numarasının harika algoritması var gerçekten.
5bo0ov6.png
HTML CSS Javascript jQuery PHP Dart Flutter

"Son Tema Ekibi Lideri"
Cevapla PGM
Teşekkür verenler:
#4
Aslında burada basamaklarını bulma işlemi çok amele bir yol bunu da döngü ile yapabiliriz ancak sayı büyüdüğünde. 11 hane çok da fazla olmasa gerek.
Ara
Cevapla PGM
Teşekkür verenler:
#5
(20-12-2019 Saat: 15:50)Codeless Nickli Kullanıcıdan Alıntı: Aslında burada basamaklarını bulma işlemi çok amele bir yol bunu da döngü ile yapabiliriz ancak sayı büyüdüğünde. 11 hane çok da fazla olmasa gerek.

Amele işlemleri döngüye bağladım. Konu günceldir.
Ara
Cevapla PGM
Teşekkür verenler:
#6
Ben olsam bu işlemi javascript le yapmazdım en azından onun koruyacağı verileri çok fazla güvenmezdim.
Tüm Destek Forumun Kuralları
Görevli Kuralları
Ücretli Mybb Tema Tasarım ve Kodlama , Bootstrap(html/css) duyarlı kodlamalar Yapılır.
Prof. Dr. MyBB Öğretmeni kaRanLık-61( Mustafa SEVİM )[ 2010-2022 => 10TL'de 12 Sene ]

İki Tarafta Zifiri kaRanLık




Mutlu Son İstiyorsan Çabalamalısın. Sadece Oturduğu Yerden Başarıya ulaşan varlık tavuktur. Bir Kurt Asla Evcilleşip Köpek Olmaz...
Cevapla PGM
Teşekkür verenler:


Hızlı Menü:


Şu anda bu konuyu okuyanlar: 1 Ziyaretçi



500000 -

Online Shopping App
Online Shopping - E-Commerce Platform
Online Shopping - E-Commerce Platform
Feinunze Schmuck Jewelery Online Shopping