TC no algoritması ve kontrol
Tarih
25/03/2012 17:19
Konu Sahibi
accessman
Yorumlar
10
Okunma
2227
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



accessman

Kullanici Avatari
Onursal
2.367
31/10/2008
425
Denizli
Ofis 2003
20/09/2016,00:20
Çözüldü 
bir yerde şu kodu buldum
accesse nasıl uyarlanır bu vb içinmiş

Kod:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Function TcDogrulaV2(ByVal tcKimlikNo As String) As Boolean
        Dim returnvalue As Boolean = False
        If (tcKimlikNo.Length <> 11) Then
            tcCustom.ErrorMessage = "<br />TC Kimlik Numarası 11 Haneli Olmalıdır."
            Return returnvalue
        End If
        Dim TcNo As Long = Long.Parse(tcKimlikNo)
        Dim BTCNO As Long = Long.Parse(Left(tcKimlikNo, 9))
        
        Dim C1 As Long = Long.Parse(Mid(tcKimlikNo, 1, 1))
        Dim C2 As Long = Long.Parse(Mid(tcKimlikNo, 2, 1))
        Dim C3 As Long = Long.Parse(Mid(tcKimlikNo, 3, 1))
        Dim C4 As Long = Long.Parse(Mid(tcKimlikNo, 4, 1))
        Dim C5 As Long = Long.Parse(Mid(tcKimlikNo, 5, 1))
        Dim C6 As Long = Long.Parse(Mid(tcKimlikNo, 6, 1))
        Dim C7 As Long = Long.Parse(Mid(tcKimlikNo, 7, 1))
        Dim C8 As Long = Long.Parse(Mid(tcKimlikNo, 8, 1))
        Dim C9 As Long = Long.Parse(Mid(tcKimlikNo, 9, 1))
        
        Dim Q1 As Long = ((10 - (((((((C1 + C3) + C5) + C7) + C9) * 3) + (((C2 + C4) + C6) + C8)) Mod 10)) Mod 10)
        Dim Q2 As Long = ((10 - (((((((C2 + C4) + C6) + C8) + Q1) * 3) + ((((C1 + C3) + C5) + C7) + C9)) Mod 10)) Mod 10)
        'Response.Write((((BTCNO * 100) + (Q1 * 10)) + Q2) & " - ")
        'Response.Write(tcKimlikNo)
        If ((((BTCNO * 100) + (Q1 * 10)) + Q2) = TcNo) Then
            tcCustom.ErrorMessage = ""
        Else
            tcCustom.ErrorMessage = "<br />Hatalı TC Kimlik Numarası."
        End If
        
        Return ((((BTCNO * 100) + (Q1 * 10)) + Q2) = TcNo)
    End Function

[/vb][vb]

@benbendedeilem
Cevapla


accessman

Kullanici Avatari
Onursal
2.367
31/10/2008
425
Denizli
Ofis 2003
20/09/2016,00:20
Çözüldü 
bir de bu var ama bunları nasıl kullanacağım

Kod:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Private Function tcknkontrol(tckn As Double)
    Dim dizi(1 To 9) As Integer
    gecici = Int(tckn / 100)
    gecici2 = Int(tckn / 100)

    For i = 9 To 1 Step -1
        dizi(i) = gecici2 Mod 10
        gecici2 = Int(gecici2 / 10)
    Next i

    deg1 = dizi(9) + dizi(7) + dizi(5) + dizi(3) + dizi(1)
    deg2 = dizi(8) + dizi(6) + dizi(4) + dizi(2)
    toplam = deg1 * 3 + deg2
    kontrol1 = (10 - (toplam Mod 10)) Mod 10

    deg1 = kontrol1 + dizi(8) + dizi(6) + dizi(4) + dizi(2)
    deg2 = dizi(9) + dizi(7) + dizi(5) + dizi(3) + dizi(1)
    toplam = deg1 * 3 + deg2
    kontrol2 = (10 - (toplam Mod 10)) Mod 10

    gecici = gecici * 100 + kontrol1 * 10 + kontrol2
    If gecici = tckn Then tcknkontrol = True Else tcknkontrol = False
End Function

Private Function rastgelets(altsinir, ustsinir As Double) As Double
    Randomize
    rastgelets = Int((ustsinir - altsinir + 1) * Rnd + altsinir)
End Function

Private Sub Form_Load()
    Form1.Visible = False
    Dim a As Double
    a = 10000000000#
    While tcknkontrol(a) = False
        DoEvents
        a = rastgelets(10000000000#, 99999999999#)
    Wend
    Clipboard.Clear
    Clipboard.SetText a
    MsgBox a & " - Numara panoya kopyalandı, kullanmak için : ctrl+v", vbInformation, "Geçerli bir TC kimlik no bulundu"
    End
End Sub



Ek Dosyalar
tc kontrol.rar
@benbendedeilem
Cevapla


ozanakkaya
sledgeab
Kullanici Avatari
Kurucu
O.... A....
9.011
29/01/2008
Denizli
Memur
Ofis 2010 32 Bit
Bugün,04:55
Çözüldü 
Aşağıdaki linki inceleyiniz.

resim

Tc Kimlik Numarası Kontrolü 


Kullanılan kod:

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Function TCKimlikNoYazimKontrol(tcid) As Boolean
Dim D(1 To 11) As Integer
    For N = 1 To 11
D(N) = Mid(tcid, N, 1)
    Next
    top1 = D(1) + D(3) + D(5) + D(7) + D(9)
    top2 = D(2) + D(4) + D(6) + D(8)
    
    cd1 = (10 - (((3 * top1) + top2) Mod 10)) Mod 10
    cd2 = (10 - (((3 * (top2 + cd1)) + top1) Mod 10)) Mod 10
    If cd1 = D(10) And cd2 = D(11) Then
        TCKimlikNoYazimKontrol = True
        Else
        TCKimlikNoYazimKontrol = False
End If
End Function

Cevapla


accessman

Kullanici Avatari
Onursal
2.367
31/10/2008
425
Denizli
Ofis 2003
20/09/2016,00:20
Çözüldü 
çok teşekkürler admin

elimde 6500 tane tc olan hasta listem var
bunların hepsi gerçek tc no
tablo adı --> "KIMLIKNO"
alan adı --> "TCNO"
alan adı --> "SUNUC"
Bu tabloyu baştan itibaren tüm numaraları kontrol ettirebilirmiyim
Tabloyu tarayacak
sonuç alanına da evet veya hayır yazacak
nasıl yapabilirim

@benbendedeilem
Cevapla


mehmetdemiral
.
Kullanici Avatari
Uzman
M.... D....
4.732
30/10/2008
Samsun
Ofis 2013 Tr. 32 Bit
Bugün,02:10
Çözüldü 
Döngü kullanarak yapabilirsiniz. Önce kayıt sayısı bulunacak, sonra da 1 den son sayıya kadar tarayan bir döngü kullanbarak, form üzerinde görsel olarak da yapabilirsiniz. Ben bugün içinde zaman bulduğumda böyle bir çalışma hazırlarım size.
İnadına, ille de Accesstr.net...
Cevapla


accessman

Kullanici Avatari
Onursal
2.367
31/10/2008
425
Denizli
Ofis 2003
20/09/2016,00:20
Çözüldü 
hani ado ile kayıt açılıp işlem uygulanıp sonucuna göre tabloya ekleniyordu
ama maalesef kod bilmediğim için düzgün bile anlatamıyorum
@benbendedeilem
Cevapla







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
Çözüldü Com1 Port Kontrol Sorunu madworld 6 2.133 01/09/2016, 10:55 atoz112
Çözüldü Access Açılışta Kontrol neyzen006 8 446 25/12/2015, 00:00 ozanakkaya
Çözüldü Malzeme zimmet/depo kontrol/teslim programı bibib 9 1.509 24/09/2015, 01:13 bibib
Çözüldü KOD DESTEĞİ - YILA GÖRE KONTROL aliyuzen 5 1.241 23/07/2015, 10:31 aliyuzen
Çözüldü ADO ile toplu kayit ekleme aynı zamanda stok kontrol ramazanemrullah 10 1.219 07/05/2015, 23:13 ozanakkaya


Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2016 MyBB Group.
DMCA.com Protection Status
© Desing by XSTYLED| Develops by ozanakkaya