JavaScript ile T.C. Kimlik Numarası Geçerlilik Kontrolü

Kayıt formlarında kişinin T.C. kimlik numarasının doğru girilip girilmediğini kontrol eden uygulamamız.

Bilindiği üzere vatandaşların sahip olduğu T.C. Kimlik No değerlerinin belirli bir düzeni (algoritması bulunmaktadır.). Biraz araştırmayla bu algoritmaya ulaştık ve bunun üzerine JavaScript ile bir şeyler karalayalım dedim.
- 11 hanelidir.
- Her hanesi rakamsal değer içerir.
- İlk hane 0 olamaz.
- 1. 3. 5. 7. ve 9. hanelerin toplamının 7 katından, 2. 4. 6. ve 8. hanelerin toplamı çıkartıldığında, elde edilen sonucun 10’a bölümünden kalan, yani Mod10’u bize 10. haneyi verir.
- 1. 2. 3. 4. 5. 6. 7. 8. 9. ve 10. hanelerin toplamından elde edilen sonucun 10’a bölümünden kalan, yani Mod10’u bize 11. haneyi verir.
JavaScript Kodlarımız
var desen_tc = /^[0-9]{11}$/;
function fnTC_No_Gecerli_Mi(parTC) {
    var blnSonuc = true;
    var strTC = String(parTC);
    if (desen_tc.test(strTC) == false) {
        blnSonuc = false;
    }
    int1 = parseInt(strTC.substr(0, 1));
    int2 = parseInt(strTC.substr(1, 1));
    int3 = parseInt(strTC.substr(2, 1));
    int4 = parseInt(strTC.substr(3, 1));
    int5 = parseInt(strTC.substr(4, 1));
    int6 = parseInt(strTC.substr(5, 1));
    int7 = parseInt(strTC.substr(6, 1));
    int8 = parseInt(strTC.substr(7, 1));
    int9 = parseInt(strTC.substr(8, 1));
    int10 = parseInt(strTC.substr(9, 1));
    int11 = parseInt(strTC.substr(10, 1));

    if (int1 === 0)
    {
        blnSonuc = false;
    }
    if ((int1 + int3 + int5 + int7 + int9 + int2 + int4 + int6 + int8 + int10) % 10 != int11)
    {
        blnSonuc = false;
    }
    if (((int1 + int3 + int5 + int7 + int9) * 7 + (int2 + int4 + int6 + int8) * 9) % 10 != int10)
    {
        blnSonuc = false;
    }
    if (((int1 + int3 + int5 + int7 + int9) * 8) % 10 != int11)
    {
        blnSonuc = false;
    }
    return blnSonuc;
}
Örnek

Yorumlar

  • Salih

    Salih:

    3 yıl önce

    Yukarıda kodda "00000000000" gibi değerler validationdan geçiyor bu tarz hataların giderildiüi ve jquery validation engine ile uyumlu olan kod orneğini T.C. Kimlik Kontrol adresinden bulabilirsiniz.
    4 cevapla
  • Yönetici Yorumu:

    3 yıl önce

    İlginize teşekkürler. O tür istisna durumları fonksiyonda elemine edebiliriz aslında. Projede hızlı bir şekilde kullanmıştım.
  • just code

    just code:

    4 yıl önce

    Bu şekilde daha mı kısa oluyor?
    5 cevapla
  • Yönetici Yorumu:

    En kısa şekilde böyle bir fonksiyonla geçerlilik yapılabiliyor şuan. Daha kısası var ise onu da yayınlayabiliriz.

Yorum Yaz

Avatar

REKLAM

DDos Koruma, Botnet Koruma, Layer 7 Saldırı koruması, Sanal sunucu, Vds sunucu

REKLAM

Çizgi Filmler

REKLAM

EN

  • Popüler
  • Yeni
  • Son Yorum