tc kimlik no
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 1
- Kayıt: 14 Nis 2005 12:00
tc kimlik no
arkadaşlar tckimlik.nvi.gov.tr de tc kimlik no paylaşımı için xml yayınlamışlar bunu nasıl kullanabiliriz bilen arkadaşlar bi el atsanız
Merhaba... WSDL'den bahsediyorsan Forumda arama yapmamışsın...
TCKimlik anahtarıyla arama yapınca çıkan linklerden birisi budur...
- Diğerleri için başvurunuz...
TCKimlik anahtarıyla arama yapınca çıkan linklerden birisi budur...
- Diğerleri için başvurunuz...

Merhaba...
- WSDL dosyasını etüd ettim. Bir TMemo'ya; fonksiyonlar dahilindeki tüm Property'leri okumayı içeren bir kod ekleyip denedim. Kendiliğinden çıktı...
fonksiyonunun döndürdüğü veri grubunu içeren KimlikBilgisi aşağıdaki yapıyı sergiliyor...
- İşte buradaki
mahalle/köy bilgisini içeriyor...
- Başarılar..
- WSDL dosyasını etüd ettim. Bir TMemo'ya; fonksiyonlar dahilindeki tüm Property'leri okumayı içeren bir kod ekleyip denedim. Kendiliğinden çıktı...
Kod: Tümünü seç
function KayitYerindenKimlikBilgisiSorgula(const be: KayitYerindenKimlikBilgisi; const Ad: WideString; const Soyad: WideString): KimlikBilgisi; stdcall;
Kod: Tümünü seç
KimlikBilgisi = class(CustomBE)
private
FTCKimlikNo: Int64;
FAd: WideString;
FSoyad: WideString;
FAnaAd: WideString;
FBabaAd: WideString;
FDogumYil: Integer;
FCinsiyet: CinsiyetTipi;
FIlKod: Integer;
FIlAd: WideString;
FIlceKod: Integer;
FIlceAd: WideString;
FCiltKod: Integer;
FCiltAd: WideString;
FAileSiraNo: Integer;
FBireySiraNo: Integer;
published
property TCKimlikNo: Int64 read FTCKimlikNo write FTCKimlikNo;
property Ad: WideString read FAd write FAd;
property Soyad: WideString read FSoyad write FSoyad;
property AnaAd: WideString read FAnaAd write FAnaAd;
property BabaAd: WideString read FBabaAd write FBabaAd;
property DogumYil: Integer read FDogumYil write FDogumYil;
property Cinsiyet: CinsiyetTipi read FCinsiyet write FCinsiyet;
property IlKod: Integer read FIlKod write FIlKod;
property IlAd: WideString read FIlAd write FIlAd;
property IlceKod: Integer read FIlceKod write FIlceKod;
property IlceAd: WideString read FIlceAd write FIlceAd;
property CiltKod: Integer read FCiltKod write FCiltKod;
property CiltAd: WideString read FCiltAd write FCiltAd;
property AileSiraNo: Integer read FAileSiraNo write FAileSiraNo;
property BireySiraNo: Integer read FBireySiraNo write FBireySiraNo;
end;
Kod: Tümünü seç
property CiltAd: WideString read FCiltAd write FCiltAd;

- Başarılar..
Muharrem bey ben bu konu ile ilgli olarak öncelikle size tsk ederim...gerek parselem işlemi için gerekse şimdi web servis hususunda ama bu tc kimlik işlemleri ile aslında ben sunu tam olarak anlamıyorum....
şimdi site bize bir web servis hizmeti sunarak bu bilgilerin alınmasını ve sorgulanmasını kolaylaştırıyor...eksiden programcı ne yapıyordu siteye bir değer gönderiyordu...ve dönen html dosyaısnı ise parse işlemi ile istediği verileri alıyordu....
şimdi ise gönderilen değerlerde gelen değerlerde xml formatında işler daha kolay...
ama ben acemi bir programcıyım en azından bu hususta;
kısa ve net olara ksorum su ben bu siteye sadece no gönderip bütün kimlik bilgilerini alabilirmiyim...
alabilirsem nasıl olacak bir örnek kod yazaranız...bir bu mevzuyu sizden biraz açmanız...forumdaki okuduklarıma göre ben sizi internetten bilgi alma hususunda üstad kabul ediyorum...ama aramızda gizli üstadlarda olabilir...
iyi çalışmalr bu arada kandilinizi kutlarım
şimdi site bize bir web servis hizmeti sunarak bu bilgilerin alınmasını ve sorgulanmasını kolaylaştırıyor...eksiden programcı ne yapıyordu siteye bir değer gönderiyordu...ve dönen html dosyaısnı ise parse işlemi ile istediği verileri alıyordu....
şimdi ise gönderilen değerlerde gelen değerlerde xml formatında işler daha kolay...
ama ben acemi bir programcıyım en azından bu hususta;
kısa ve net olara ksorum su ben bu siteye sadece no gönderip bütün kimlik bilgilerini alabilirmiyim...
alabilirsem nasıl olacak bir örnek kod yazaranız...bir bu mevzuyu sizden biraz açmanız...forumdaki okuduklarıma göre ben sizi internetten bilgi alma hususunda üstad kabul ediyorum...ama aramızda gizli üstadlarda olabilir...
iyi çalışmalr bu arada kandilinizi kutlarım
Siz hayal edin...Biz yapalım TuannaSoft...
Merhaba...
- Estağfurullah, proje ve sorun çözüm adına daha çok Web ile etkileşimli sorunları olan müşterim olduğundan diğerler projelere göre biraz daha vakit ayırdık o kadar...
Forumla paylaşmakla da bu vakti değerli kılmak istedim... Bilgi paylaşınca değerli oluyor...
- Soruna gelince, üzgünüm ki TCKimlik numarasını verince; aşağıdaki yapı dahilinde 4 veri dönüyor. TCKimlikNo, Ad, Soyad ve Doğum Yılı.
- İl ve İlçe bilgisi olmazsa olmazlardan... Bunun için istihbarat için (eşim bürosunda kullansın diye) tüm Türkiye'yi tarayan ve/veya ailenin diğer bireyinin numarasını bulmak için sayım yapan bir proje hazırlamak zorunda kalmıştım. Bunu yapabilmek için de Anne Adı Baba Adı ve Doğum Yıl marjını bilmek gerekiyor...
Paket programlar kısmında belki görmüşsündür...
- Estağfurullah, proje ve sorun çözüm adına daha çok Web ile etkileşimli sorunları olan müşterim olduğundan diğerler projelere göre biraz daha vakit ayırdık o kadar...


- Soruna gelince, üzgünüm ki TCKimlik numarasını verince; aşağıdaki yapı dahilinde 4 veri dönüyor. TCKimlikNo, Ad, Soyad ve Doğum Yılı.
Kod: Tümünü seç
TCKimlikNoDogrulamaSonucu = class(SearchInfoBE)
private
FTCKimlikNo: Int64;
FAd: WideString;
FSoyad: WideString;
FDogumYil: Integer;
published
property TCKimlikNo: Int64 read FTCKimlikNo write FTCKimlikNo;
property Ad: WideString read FAd write FAd;
property Soyad: WideString read FSoyad write FSoyad;
property DogumYil: Integer read FDogumYil write FDogumYil;
end;
Paket programlar kısmında belki görmüşsündür...
Merhaba...
- Protokolü Nüfus İdaresi hazırladığından, orayla özel ilişkileri olan bir Delphi'ci için tabiki imkanız değil.
- Şaka bir yana, TCKimlik için sorgulama yapan bizler istemciyiz (Client). Server neyi protokol haline getirip göndermeyi taahhüt ettiyse sadece ona tabiyiz.
- Bunu aşmak hack kulvarına başvurmak demek olur ki böyle bir çaba hukuki sorumluluk getirebilir hatta güvenlik gerekçesiyle servisi kapatma kararına dönebilir...
- Protokolü Nüfus İdaresi hazırladığından, orayla özel ilişkileri olan bir Delphi'ci için tabiki imkanız değil.



- Şaka bir yana, TCKimlik için sorgulama yapan bizler istemciyiz (Client). Server neyi protokol haline getirip göndermeyi taahhüt ettiyse sadece ona tabiyiz.

- Bunu aşmak hack kulvarına başvurmak demek olur ki böyle bir çaba hukuki sorumluluk getirebilir hatta güvenlik gerekçesiyle servisi kapatma kararına dönebilir...

Muharrem Bey;
Kimlik sorgulama programınızda referer kullandınız mı? Daha doğrusu site kullanıyor mu referrer adresi... Bilginiz varmı;
ayrıca tckimlik.nvi.gov.tr/Web/QueryIdentityNumber.aspx adresindeki
__VIEWSTATE alanının value değeri için siz ne aldınız..
Yaptığım tckimlik sorgulama programında hata vermekte.. Bu yüzden sordum. Sizin programınız oldukça iyi çalışmakta..
Yardımlarınız için teşekkür ederim.
Kimlik sorgulama programınızda referer kullandınız mı? Daha doğrusu site kullanıyor mu referrer adresi... Bilginiz varmı;
ayrıca tckimlik.nvi.gov.tr/Web/QueryIdentityNumber.aspx adresindeki
__VIEWSTATE alanının value değeri için siz ne aldınız..
Yaptığım tckimlik sorgulama programında hata vermekte.. Bu yüzden sordum. Sizin programınız oldukça iyi çalışmakta..
Yardımlarınız için teşekkür ederim.
http://www.bargem.info
Yaşıyorum..... İnadına değil yaptıklarım. Herşey istediğim için oluyor. İstediğim için türkü dinliyorum. İstediğim için çalışıyorum. İstediğim için yaşıyorum ve istediğim için seni seviyorum...
Yaşıyorum..... İnadına değil yaptıklarım. Herşey istediğim için oluyor. İstediğim için türkü dinliyorum. İstediğim için çalışıyorum. İstediğim için yaşıyorum ve istediğim için seni seviyorum...
Merhaba...
- Artık WMDL ile sorgu yaptırıyorum. Böyle Web Servisleri ile daha hızlı oluyor...
- Daha önce bir etüdünü yaptığım şekilde ASP ile de çekilebiliyor ama hash kodu kendimiz oluşturmamız gerekiyor. Türkçe için bir çözüm arıyorken Web Servislerine geçiş yaptım.
- viewtopic.php?t=6153#3719 linkinden de görebileceğin aşağıdaki fonksiyon şekilde bir çalışmam olmuştu.
- Tavsiyem yine de Web Services'den yana. O linkte gerekli desteği bulacaksın.
- Artık WMDL ile sorgu yaptırıyorum. Böyle Web Servisleri ile daha hızlı oluyor...
- Daha önce bir etüdünü yaptığım şekilde ASP ile de çekilebiliyor ama hash kodu kendimiz oluşturmamız gerekiyor. Türkçe için bir çözüm arıyorken Web Servislerine geçiş yaptım.
- viewtopic.php?t=6153#3719 linkinden de görebileceğin aşağıdaki fonksiyon şekilde bir çalışmam olmuştu.
Kod: Tümünü seç
Procedure TForm1.Sorgula( Sorgu:Word;ctlCity, ctlDistrict, ctlFirstName, ctlLastName, ctlCilt,
ctlAileSiraNo, ctlSiraNo, ctlFatherName, ctlMotherName,
ctlBirthDate, ctlSex : String);
Const
HashCode = 'dDwtMTEyNDkzODg2ODt0PDtsPGk8MT47PjtsPHQ8O2w8aTw1PjtpPDc%2BOz47bDx0PHQ8O3Q8aTw4M'
+'T47QDxBREFOQTtBRElZQU1BTjtBRllPTktBUkFIxLBTQVI7QcSeUkk7QUtTQVJBWTtBTUFTWUE7QU5L'
+'QVJBO0FOVEFMWUE7QVJEQUhBTjtBUlRWxLBOO0FZRElOO0JBTElLRVPEsFI7QkFSVElOO0JBVE1BTjt'
+'CQVlCVVJUO0LEsExFQ8SwSztCxLBOR8OWTDtCxLBUTMSwUztCT0xVO0JVUkRVUjtCVVJTQTvDh0FOQU'
+'tLQUxFO8OHQU5LSVJJO8OHT1JVTTtERU7EsFpMxLA7RMSwWUFSQkFLSVI7RMOcWkNFO0VExLBSTkU7R'
+'UxBWknEnjtFUlrEsE5DQU47RVJaVVJVTTtFU0vEsMWeRUjEsFI7R0FaxLBBTlRFUDtHxLBSRVNVTjtH'
+'w5xNw5zFnkhBTkU7SEFLS0FSxLA7SEFUQVk7ScSeRElSO0lTUEFSVEE7xLBTVEFOQlVMO8SwWk3EsFI'
+'7S0FIUkFNQU5NQVJBxZ47S0FSQULDnEs7S0FSQU1BTjtLQVJTO0tBU1RBTU9OVTtLQVlTRVLEsDtLSV'
+'JJS0tBTEU7S0lSS0xBUkVMxLA7S0lSxZ5FSMSwUjtLxLBMxLBTO0tPQ0FFTMSwO0tPTllBO0vDnFRBS'
+'FlBO01BTEFUWUE7TUFOxLBTQTtNQVJExLBOO01FUlPEsE47TVXEnkxBO01VxZ47TkVWxZ5FSMSwUjtO'
+'xLDEnkRFO09SRFU7T1NNQU7EsFlFO1LEsFpFO1NBS0FSWUE7U0FNU1VOO1PEsMSwUlQ7U8SwTk9QO1P'
+'EsFZBUzvFnkFOTEkgVVJGQTvFnklSTkFLO1RFS8SwUkRBxJ47VE9LQVQ7VFJBQlpPTjtUVU5DRUzEsD'
+'tVxZ5BSztWQU47WUFMT1ZBO1lPWkdBVDtaT05HVUxEQUs7PjtAPDE7MjszOzQ7Njg7NTs2Ozc7NzU7O'
+'Ds5OzEwOzc0OzcyOzY5OzExOzEyOzEzOzE0OzE1OzE2OzE3OzE4OzE5OzIwOzIxOzgxOzIyOzIzOzI0'
+'OzI1OzI2OzI3OzI4OzI5OzMwOzMxOzc2OzMyOzM0OzM1OzQ2Ozc4OzcwOzM2OzM3OzM4OzcxOzM5OzQ'
+'wOzc5OzQxOzQyOzQzOzQ0OzQ1OzQ3OzMzOzQ4OzQ5OzUwOzUxOzUyOzgwOzUzOzU0OzU1OzU2OzU3Oz'
+'U4OzYzOzczOzU5OzYwOzYxOzYyOzY0OzY1Ozc3OzY2OzY3Oz4%2BO2w8aTwwPjs%2BPjs7Pjt0PHQ8O'
+'3Q8aTwxMz47QDxTRVlIQU47Q0VZSEFOO0ZFS0U7S0FSQcSwU0FMSTtLQVJBVEHFnjtLT1pBTjtQT1pB'
+'TlRJO1NBxLBNQkVZTMSwO1RVRkFOQkVZTMSwO1lVTVVSVEFMSUs7WcOcUkXEnsSwUjtBTEFEQcSeO8S'
+'wTUFNT8SeTFU7PjtAPDExMDQ7MTIxOTsxMzI5OzE0Mzc7MTQ0MzsxNDg2OzE1ODA7MTU4ODsxNjg3Oz'
+'E3MzQ7MTc0ODsxNzU3OzE4MDY7Pj47Pjs7Pjs%2BPjs%2BPjs%2BkI%2FKatDlfw5pizkE3dJdBEsyW'
+'kw%3D';
Var
Url,
Dosya : String;
ParamStr : String;
begin
Url := 'http://tckimlik.nvi.gov.tr/Web/QueryIdentityNumber.aspx';
Dosya := ExtractFilePath(Application.ExeName)+'Gelen.TXT';
//DosyaIndir(Url+'??__EVENTTARGET=ctlCity&__EVENTARGUMENT=', Dosya); // Hashcode çekicez...
// xHashCode := HashCodeOku(Dosya); // Code Web'den okunur
// ShowMessage(xHAshCode);
If FileExists(Dosya) then DeleteFile(Dosya);
ParamStr := '';
ParamStr := ParamStr
+ '__EVENTTARGET='
+ '&' + '__EVENTARGUMENT='
+ '&' + '__VIEWSTATE=' + HttpEncode(xHashCode)
+ '&' + 'ctlCity=' + ctlCity
+ '&' + 'ctlDistrict=' + HttpEncode('"'+ctlDistrict+'"')
+ '&' + 'ctlFirstName=' + UTF8Encode(ctlFirstName)
+ '&' + 'ctlLastName=' + UTF8Encode(ctlLastName)
+ '&' + 'ctlCilt=' + UTF8Encode(ctlCilt)
+ '&' + 'ctlAileSiraNo='+ UTF8Encode(ctlAileSiraNo)
+ '&' + 'ctlSiraNo=' + UTF8Encode(ctlSiraNo)
+ '&' + 'ctlFatherName='+ UTF8Encode(ctlFatherName)
+ '&' + 'ctlMotherName='+ UTF8Encode(ctlMotherName)
+ '&' + 'ctlBirthDate=' + UTF8Encode(ctlBirthDate)
+ '&' + 'ctlSex=' + UTF8Encode(ctlSex);
Case Sorgu of
1: ParamStr := ParamStr + '&' + 'ctlQueryFromData=T.C.+Kimlik+No+Sorgula';
2: ParamStr := ParamStr + '&' + 'ctlQueryFromPersonalInfo=T.C.+Kimlik+No+Sorgula';
end; // Case
Url := Url+'?'+ParamStr;
ShellExecute(0, 'open', 'IExplore.exe', PChar( Url ), '', SW_Normal);
end;