pcp tc kimlik no doğrulama

Php Tc Kimlik No Doğrulama

Nüfus ve vatandaşlık işleri’nin bizlere verdiği soap service sayesinde projelerimizde üyelik alanlarında T.C. kimlik no doğrulama işlemini gerçek anlamda doğrulatabiliyoruz.

Soap (Basit nesne iletişim protokolü) internetteki küçük boyutta bilgi veya mesajları aktarma protokülüdür. Ayrıca bilmeniz gereken Soap mesajlarının xml tabanlı olarak çalıştığıdır.

Şimdi ise Php Tc kimlik no doğrulama işlemini şu şekilde yapabiliyoruz.

<?php
$service = new SoapClient("https://tckimlik.nvi.gov.tr/Service/KPSPublic.asmx?WSDL");
try {
    $result = $service->TCKimlikNoDogrula([
        'TCKimlikNo' => '11111111111',
        'Ad' => 'AHMET',
        'Soyad' => 'ARSLAN',
        'DogumYili' => '1989'
    ]);

    if ($result->TCKimlikNoDogrulaResult) {
        echo 'T.C. Kimlik No Doğrulandı';
    } else {
        echo 'T.C. Kimlik No Hatalı';
    }
} catch (Exception $e) {
    echo $e->faultstring;
}

Sorgulatacağınız değerler içerisinde Ad-Soyad bölümlerinin hepsi BÜYÜK HARF olmak zorunda, aksi taktirde işlem başarısız kılınır. Bu önemli dipnotu unutmayınız. Bu işlemleri eksiksiz yapmanıza rağmen şu şekilde bir hataylamı karşılaşıyorsunuz?

 Fatal error: Class 'SoapClient' not found in C:\AppServ\www\kimliksorgula.php on line 2

Bu hatayı almanızın gerekçesi php.ini dosyanızda soap’ın pasif halde olmasıdır. Php_soap.dll dosyasını php.ini dosyasına ekleyeceğiz ve soap aktif hale getireceğiz. Bunun için xampp için; xammp/php/php.ini yolunu izleyerek php.ini dosyasına ulaşım sağlayabilirsiniz. Dosyayı açalım ve Ctrl+F kombinasyonu ile [soap] yazarak aratalım.

php soap dll php ini ayarları

Eğer gelen kısımda;

;extension=php_soap.dll

Bu şekilde bir kullanım zaten var ise başta bulunan ; silip kayıt edin ve aktif hale getirin. Eğer ki bu bölümde bu kullanım hiç yok ise o zaman örnek’te görüldüğü üzere soap_wsdl_cache_enabled=1 bölümünün altına gelerek;

extension=php_soap.dll

Yazarak php.ini dosyanızı kaydedip dosyayı kapatın. Son olarak ayarların aktif olabilmesi için local sunucunuzu restart atmanız gerekir. Restart işleminden sonra tekrar php tc kimlik no kontrol uygulamasını test ettiğinizde sorunsuz bir şekilde çalıştığını göreceksiniz.

Translate »