Bazı durumlarda kullanıcının kimlik bilgilerinin doğru olup olmadığının kontrol edilmesi gerekebilir. Örneğin misafir kullanıcılar sizin dış IP’niz ile internete erişmek istediğinde, erişimin kimin tarafından yapıldığı bilinmelidir. Aksi halde kullanıcının yaptığı herhangi bir yasa dışı işlem sizin başınızı ağrıtacaktır ve 5651 sayılı kanunda buna işaret etmektedir. Bu noktada kullanıcının vermiş olduğu kimlik bilgilerinin doğrulanması gerekecektir. Daha önceden hotspot kimlik doğrulama kısmında kullanmış olduğum PHP ile TC Kimlik doğrulama kodunu aşağıda gibi sizinle paylaşıyorum:

DEMO

 

 

<!DOCTYPE html>
<html lang="tr" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>TC Kimlik Bilgileri Doğrulama</title>
  </head>
  <body>

<!-- TC Kimlik Doğrulama Formu -->
<form action="" method="POST">
  <input type="text" required="" name="TC" maxlength="11" placeholder="TC Kimlik Numaranız"><br>
  <input type="text" required="" name="AD" placeholder="Adınız"><br>
  <input type="text" required="" name="SOYAD"placeholder="Soyadınız"><br>
  <input type="text"required="" name="DOGUMYILI" maxlength="4" placeholder="Doğum Yılınız"><br>
  <button type="submit" name="tcKimlikSorgula">Formu Gönder</button>
</form>
<hr>



<?php

//---------------Karakter Düzelt Fonksiyonu---------------//
/*
karakterDuzelt adında bir fonksiyon hazırlıyoruz. Bu fonksiyonu türkçe karakter
ler küçük yazıldığında otomatik olarak büyük hale çevirecek. Doğrulama isteğini
bu şekilde göndereceğiz.
*/
function karakterDuzelt($yazi){
     $ara=array("ç","i","ı","ğ","ö","ş","ü");
     $degistir=array("Ç","İ","I","Ğ","Ö","Ş","Ü");
     $yazi=str_replace($ara,$degistir,$yazi);
     $yazi=strtoupper($yazi);
     return $yazi;
}


// ----------------TC Kimlik No Doğrulama Kısmı----------------//

/*
Bilgiler doldurulup Formu Gönder butonuna tıklanana kadar işlem başlamaması için
isset() fonksiyonu kullanıyoruz.
*/
if (isset($_POST['tcKimlikSorgula'])) {

/*
Değerler, formu gönder butonu ile birlikte POST edildi ve yakalayıp ilgili değiş-
kenlere atadık.
*/
$tcKimlikNo=$_POST['TC'];
/*
Ad ve Soyad için türkçe küçük karakter yazılırsa bunu otomatik olarak büyük hale
çeviriyoruz (karakterDuzeltme) ve her ihtimale karşın sağında ya da solunda
boşluk varsa o kısmı kırpıyoruz(trim()).
*/
$ad = karakterDuzelt(trim($_POST["AD"]));
$soyad= karakterDuzelt(trim($_POST['SOYAD']));

$dogumYili=$_POST['DOGUMYILI'];



/*
Bundan sonraki kodları TRY CATCH blogunda yazdıracağız ki herhangi bir hata ol-
duğunda bunu yakalayabilelim.
*/
try {

/*
Değişkenlere atadığımız form verilerini $veriler adında bir diziye aktarıyoruz.
*/
  $veriler = array(
    'TCKimlikNo' => $tcKimlikNo,
    'Ad' => $ad,
    'Soyad' => $soyad,
    'DogumYili' => $dogumYili
  );

/*
OOP ile SOAP oluşturarak $baglan adında bir değişkene atıyoruz. Bu sayede
tckimlik.nvi.gov.tr üzerinden elimizdeki verileri kullanarak sorgulama yapabile-
ceğiz. Eğer php.ini de bulunan extensions'da soap aktif değilse başındaki ";"
noktalı virgülü kaldırıp servisi yeniden başlatmanız gerekecektir.
*/
  $baglan = new SoapClient("https://tckimlik.nvi.gov.tr/Service/KPSPublic.asmx?WSDL");

  $sonuc = $baglan -> TCKimlikNoDogrula ($veriler);

// Forma girilen bilgilerin hepsi doğruysa aşağıdaki mesaj
  if ($sonuc->TCKimlikNoDogrulaResult) {
    echo "Girmiş olduğunuz kimlik bilgileri doğrudur.";
  }


// Bir yada bir kaçtanesi yanlış ise aşağıdaki mesaj son kullanıcıya gösterilir.
  else {
    echo "Girmiş olduğunuz kimlik bilgileri yanlıştır.";
  }

// Eğer hata oluşursa ekrana yazdırıyoruz.
} catch (\Exception $e) {
 echo $exc->getMessage();
}
}

else {
  // code...
}



     ?>


  </body>
</html>

 

PHP.NET


Abone ol
Bildir
guest
0 Yorum
Satır İçi Geri Bildirimler
Tüm yorumları görüntüle