İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Sinema Dizi Akıllı Ev Motosiklet Mikromobilite Kripto Para Sağlık Teknolojileri Son dakika Yazarlar
  1. Ana sayfa
  2. SDN Forum
  3. Programlama
  4. Programlama Dilleri
Programlama Dilleri

VB.NET Kredi Kartı Kontrolü

Konu bilgisi

3cevap
2.306görüntüleme
22.04.2012açıldı
23.04.2012son cevap

#1
Merhabalar , vb.net uygulamamda kredi kartı kontrolü yapmak istiyorum fakat bunu sadece kredi kartı numarası uzunluğu , son kullanma tarihi ile bırakmak istemiyorum.

2 sene önce godaddy den domain alırken kredi kartı numaramın ilk 2 hanesini girmemle birlikte visa olduğunu gösterdi.

Bu sene başında da arabanın vergisini yatırmak için internet vergi dairesi sitesinde ödeme yaaprken kredi kartı numaramın ilk 4 hanesini girdiğimde hangi banka olduğunu gösteriyordu.

Bu tarz kontroller eklemek istiyorum.
Nasıl yapabilirim ?

Not: Kredi kartı işlemi sanalpos um olmadığı için olmayacak fakat , nasıl yapılacağı hakkında kaynak verirseniz çok sevinirim.

+ olarak paypal ile nasıl ödeme yapabilirim ?

benim mail hesabımın kayıtlı olduğu hesaba para aktarma gibi.

Teşekkürler.
Cevaplar
blazedanger35 Konuyu açan
#3
eyw sağol hocam , ilk linkteki listede sadece yapı kredi yi bulabildim Türk bankalarından.
2.link çalışmıyor.

şuan ben kendi çapımda bir araştırmamla visa mastercard olarak ayırabiliyorum.
Türk bankalarına yırabilmiş değilim :D

--- Mesaj Güncellendi ---

http://m.friendfeed-media.com/21b7c71d714db3c5a113ae453c1a6644cc551b61

bi ton hane var .s
[/COLOR][CODE]Public Enum CreditCardTypes        Invalid = -1
        VISA
        MASTERCARD
        DISCOVER
        AMEX
    End Enum


    Private Shared CreditCardPatterns As New List(Of String) _
                 (New String() { _
                 "^(4\d{12})|(4\d{15})$", _
                 "^5[1-5]\d{14}$", _
                 "(^(6011)\d{12}$)|(^(65)\d{14}$)", _
                 "^3[47]\d{13}$"})


    Private Shared _cardNumber As String


    Public Shared Function Validate(ByVal cardNumber As String) As CreditCardTypes
        Dim CardType As CreditCardTypes = CreditCardTypes.Invalid
        _cardNumber = Regex.Replace(cardNumber, "[^\d]", String.Empty)
        CardType = CType(CreditCardPatterns.FindIndex(AddressOf FindPattern), CreditCardTypes)
        If CardType = CreditCardTypes.Invalid Then
            _cardNumber = String.Empty
            Return CreditCardTypes.Invalid
        End If
        Dim Digits As Char() = _cardNumber.ToCharArray
        _cardNumber = String.Empty
        Dim Digit As Integer
        Dim Sum As Integer = 0
        Dim Alt As Boolean = False
        Array.Reverse(Digits)
        For Each Value As Char In Digits
            Digit = Integer.Parse(Value)
            If Alt Then
                Digit *= 2
                If Digit > 9 Then
                    Digit -= 9
                End If
            End If
            Sum += Digit
            Alt = Not Alt
        Next
        If Sum Mod 10 = 0 Then
            Return CardType
        Else
            Return CreditCardTypes.Invalid
        End If
    End Function


    Private Shared Function FindPattern(ByVal value As String) As Boolean
        If Regex.IsMatch(_cardNumber, value) Then
            Return True
        Else
            Return False
        End If
    End Function[/CODE]






		Dim CardType As Satis.CreditCardTypes = Satis.Validate(TxtKredino.Text)
        If CardType = Me.CreditCardTypes.Invalid Then
            LblKredino.Text = "GEÇERSİZ KREDİ KARTI NUMARASI"
            LblKredino.ForeColor = Color.Red
            pickart.Visible = False
        Else
            LblKredino.Text = String.Concat("GEÇERLİ ", [Enum].GetName(GetType(Satis.CreditCardTypes), CardType), " KREDİ KARTI NUMARASI")
            LblKredino.ForeColor = Color.Green

 End If[COLOR=Silver]




--- Mesaj Güncellendi ---

bir regular expression üretmem lazım sanırım.
#4
Haklısın. 2. bağlantıda bir sorun var. Bi' de şunu dene (Paypal API dökümantasyon).

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/library_documentation

----

Kredi kartı numaraları ile ilgili çok fazla bi' şey yapabileceğini zannetmiyorum. Wikipedia üzerinde bulduğum döküman güncelliğini yitirmiş olabilir. Güncel olsa bile, çok geçmez, güncelliğini yitirir. (Bankaların devri, kapanması, isim değiştirmesi, yenilerinin açılması...)

Başını da ağrıtır. Şu anda X Bank'ın domaininde bulunan kart numarası, Y bankasına geçerse, güncellemediğin takdirde hala X Bank'ın gibi görünecektir. Alışverişi yapan kişinin kafasını karıştırabilir. ;)

----

Bence 3D security üzerine yoğunlaşsan daha faydalı olur. 3D security; sorumluluğu büyük oranda üzerinden alır, sitenin güvenilirliğini arttırır ve hangi bankaya ait olduğuyla uğraşmak zorunda kalmazsın. Ödeme işlemi sırasında, sistem, kart sahibini zaten kendi bankasına yönlendirecektir.

--- Mesaj Güncellendi ---

Şu linkte de Paypal ile ilgili örnek kodlar var:

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/library_code

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.

Reklam