1. Ayyıldız Tim forumu Hariç Hiç Bir şekilde Rütbeli Oldugunu İddaa edenlere inanmayınız..⠀ Ayyıldız Tim Adına Sizden Bilgi Belge TC Kimlik Vb Evrak İsteyenlere Asla Bilgilerinizi Vermeyiniz.

Php İle T.C. Kimlik No Doğrulama Fonksiyonu

'Php-Nuke' forumunda pR. tarafından 11 Ocak 2013 tarihinde açılan konu

  1. pR. Guest

    • Guest
    Katılım:
    2 Ocak 2013
    Mesaj:
    353
    Alınan Beğeniler:
    24
    Meslek:
    Lise (Öğrenci)

    Özel Mesaj
    Eğer büyük bir proje geliştirecekseniz ya da gerçekten önemli bir proje geliştiriyorsanız kullanıcılarınızın doğrulama işlemi gerçekten önemli bir hal alır. E-posta vb. doğrulama bizi bir yere kadar idare eder fakat artık bazı büyük firmalar doğrulamalarda T.C. Kimlik No istemeye başladı. T.C. kimlik numarasını doğrudan kontrol etme imkanımız yok maalesef(en azından ücretsiz yok). Ama bilindiği üzere T.C. kimlik numarasında bulunması gereken belli nitelikler var ve bu niteliklere göre kontrol edebiliriz.

    T.C. Kimlik Numarasında Bulunması Gereken Özellikler

    T.C. kimlik numaraları 11 hanedir ve tamamı rakamsal değerlerden oluşur.
    T.C. kimlik numarasının ilk hanesi sıfır(0) olamaz.
    1. 3. 5. 7. ve 9. 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 bize 10. haneyi verir.
    1. 2. 3. 4. 5. 6. 7. 8. 9. 10. hanelerin toplamının 10′a göre modu bize 11. haneyi verir.


    Geçenlerde bir arkadaş sorunca arşivimi karıştırdım. Ve aşağıda paylaştığım, yukarıdaki kriterlere göre verilen numarayı kontrol eden , geçerli bir T.C. kimlik numarası olup olmadığını bize söyleyen fonksiyonu buldum. Her ne kadar kesin bir çözüm olmasa da T.C. kimlik numarasının algoritmasını bilmeyenleri engeller.

    Php İle T.C. Kimlik No Doğrulama Fonksiyonu

    PHP:
     <?php 
    function tckimlik($tckimlik){ 
        
    $olmaz=array('11111111110','22222222220','33333333330','44444444440','55555555550','66666666660','7777777770','88888888880','99999999990'); 
        if(
    $tckimlik[0]==or !ctype_digit($tckimlik) or strlen($tckimlik)!=11){ return false;  } 
        else{ 
            for(
    $a=0;$a<9;$a=$a+2){ $ilkt=$ilkt+$tckimlik[$a]; } 
            for(
    $a=1;$a<9;$a=$a+2){ $sont=$sont+$tckimlik[$a]; } 
            for(
    $a=0;$a<10;$a=$a+1){ $tumt=$tumt+$tckimlik[$a]; } 
            if((
    $ilkt*7-$sont)%10!=$tckimlik[9] or $tumt%10!=$tckimlik[10]){ return false; } 
            else{  
                foreach(
    $olmaz as $olurmu){ if($tckimlik==$olurmu){ return false; } } 
                return 
    true
            } 
        } 

    if(
    tckimlik('11111111110')){ echo 'Tc Kimlik Numarası doğru!'; } else { echo 'Lütfen geçerli bir Tc Kimlik Numarası giriniz...'; } 
    ?>


     

Bu Sayfayı Paylaş