Webcam Kullanan İnsan
Yetkin
- Katılım
- 23 Aralık 2023
- Mesajlar
- 304
- Makaleler
- 1
- Çözümler
- 2
- Beğeniler
- 282
Merhabalar. Bazı kişiler web sitelerine TC Kimlik Numarası isteyen formlar koyuyor fakat nasıl doğrulayacaklarını bilmiyorlar. Hiçbir şekilde yasadışı yöntem kullanmaya gerek kalmadan, Nüfus ve Vatandaşlık İşlerinin bizlere sunduğu API hizmeti ile nasıl doğrulama yapacağınızı göstereceğim.
API linki:
Herşeyden önce, Win + R kombinasyonuyla Çalıştır'ı başlatın ve içerisine "php.ini" yazın. Açılan metin belgesinden CTRL + F kombinasyonuyla "soap" yazın. Şu değişikliği yapın:
Kısaca, başındaki noktalı virgülü kaldırın. Soap eklentisini aktif etmiş oluyorsunuz. Ardından kullandığınız programdan Apache hizmetini yeniden başlatın.
Basit bir form oluşturarak işe başlayacağız. Ben sadece kodun temel mantığını göstermek için anlattığımdan dolayı herhangi bir CSS veya stil dosyası kullanmadım, sadece form oluşturdum. Görüntüsünü siz sonradan istediğiniz gibi halledebilirsiniz.
Devamında ise API'ı kullanarak bir istek oluşturacağız. PHP kodumuz şu şekilde:
İlk olarak formdan inputa doldurulan verilerimizi çektik ve onları bir değişkene atadık. Ardından API'a bir istek gönderdik ve isteğimizden olumlu dönüş alırsak "Doğrulama Başarılı" yazısını yazdırdık.
Anlatımım kötü olmuş olabilir, kusuruma bakmayın. Yardımcı olabildiysem ne mutlu. Sorularınızı sorabilirsiniz. İyi forumlar.
Uğraşmak istemeyenler için, GitHub linki:
github.com
Videolu anlatım:
API linki:
Herşeyden önce, Win + R kombinasyonuyla Çalıştır'ı başlatın ve içerisine "php.ini" yazın. Açılan metin belgesinden CTRL + F kombinasyonuyla "soap" yazın. Şu değişikliği yapın:
Kod:
;extension=soap
extension=soap
Kısaca, başındaki noktalı virgülü kaldırın. Soap eklentisini aktif etmiş oluyorsunuz. Ardından kullandığınız programdan Apache hizmetini yeniden başlatın.
Basit bir form oluşturarak işe başlayacağız. Ben sadece kodun temel mantığını göstermek için anlattığımdan dolayı herhangi bir CSS veya stil dosyası kullanmadım, sadece form oluşturdum. Görüntüsünü siz sonradan istediğiniz gibi halledebilirsiniz.
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>TCKN Doğrula</title>
</head>
<body>
<form action="form.php" method="POST">
<label for="tckn">TC Kimlik Numarası</label>
<input type="text" name="tckn" id="tckn" placeholder="TC Kimlik Numarası">
<br>
<label for="name">Ad</label>
<input type="text" name="name" id="name" placeholder="Ad">
<br>
<label for="surname">Soyad</label>
<input type="text" name="surname" id="surname" placeholder="Soyad">
<br>
<label for="dob">Doğum Yılı</label>
<input type="text" name="dob" id="dob" placeholder="Doğum Yılı">
<br>
<button type="submit" name="submit">Doğrula</button>
</form>
</body>
</html>
Devamında ise API'ı kullanarak bir istek oluşturacağız. PHP kodumuz şu şekilde:
PHP:
<?php
if($_POST['tckn'] && $_POST['name'] && $_POST['surname'] && $_POST['dob']) {
$tckn = $_POST['tckn'];
$name = $_POST['name'];
$surname = $_POST['surname'];
$dob = $_POST['dob'];
try {
$tcknApi = new SoapClient("https://tckimlik.nvi.gov.tr/service/kpspublic.asmx?WSDL");
$params = [
"TCKimlikNo" => $tckn,
"Ad" => $name,
"Soyad" => $surname,
"DogumYili" => $dob
];
$response = $tcknApi -> TCKimlikNoDogrula($params);
if($response -> TCKimlikNoDogrulaResult) {
echo 'Doğrulama başarılı.';
exit;
} else {
echo 'Doğrulama başarısız.';
exit;
}
}
catch (PDOException $e) {
die("Hata: " . $e->getMessage());
}
} else {
echo 'Bütün bilgileri doldurun.';
exit;
}
İlk olarak formdan inputa doldurulan verilerimizi çektik ve onları bir değişkene atadık. Ardından API'a bir istek gönderdik ve isteğimizden olumlu dönüş alırsak "Doğrulama Başarılı" yazısını yazdırdık.
TCKimlikNoDogrula ve TCKimlikNoDogrulaResult bölümleri hariç diğer bütün bölümleri kafanıza ve projenize göre değiştirebilirsiniz. Ben herhangi bir güvenlik fonksiyonu oluşturmadım veya kullanmadım. Onlara dikkat etmeyi unutmayın. Çünkü doğrulama yapacağınız veriler kritik veriler.Anlatımım kötü olmuş olabilir, kusuruma bakmayın. Yardımcı olabildiysem ne mutlu. Sorularınızı sorabilirsiniz. İyi forumlar.
Uğraşmak istemeyenler için, GitHub linki:
GitHub - vFurky/tckimlikdogrulama: NVİ API kullanarak TC Kimlik Numarası doğrulama sistemi.
NVİ API kullanarak TC Kimlik Numarası doğrulama sistemi. - vFurky/tckimlikdogrulama
Videolu anlatım:
Son düzenleyen: Moderatör: