begin process at 2008 05 17 07:28:48
1 173 919 membres
51 nouveaux aujourd'hui
13 973 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

TESTER LA VALIDITÉ D'UN NUMÉRO DE CARTE DE CRÉDIT


Information sur la source

Catégorie :E-Commerce Niveau : Débutant Date de création : 07/03/2002 Date de mise à jour : 07/03/2002 18:19:31 Vu : 39 561

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

Description

Lors de vos transactions si votre client doit donner son numéro de crédit il faut bien pouvoir vérifier si il est valide un minimum... C'est pourquoi voici une fonction qui utilise la clé de Luhn (pour les connaisseurs).

Pour plus d'infos sur la clé de Luhn allez voir cette URL:
http://parodie.com/monetique/verifcle.htm  

Source

  • Function CheckNCB(wNCB)
  • Dim Total
  • Dim ThisN
  • Dim I
  • For I = 1 To Len(wNCB)
  • ThisN = Mid(wNCB, I, 1)
  • If I / 2 = Int(I / 2) Then
  • Total = Total + ThisN
  • Else
  • If ThisN * 2 > 9 Then
  • Total = Total + (ThisN * 2 - 9)
  • Else
  • Total = Total + ThisN * 2
  • End If
  • End If
  • Next I
  • If Total / 10 = Int(Total / 10) Then
  • CheckNCB=1
  • Else
  • CheckNCB=0
  • End If
  • End Function
Function CheckNCB(wNCB)
    Dim Total
    Dim ThisN
    
    Dim I
    For I = 1 To Len(wNCB)
        ThisN = Mid(wNCB, I, 1)
    
        If I / 2 = Int(I / 2) Then
            Total = Total + ThisN
            
            
        Else
            
            If ThisN * 2 > 9 Then
                Total = Total + (ThisN * 2 - 9)
            Else
                Total = Total + ThisN * 2
            End If
        End If
    
    Next I
    
    If Total / 10 = Int(Total / 10) Then
        CheckNCB=1
    Else
        CheckNCB=0
    End If

End Function  

Conclusion

C'est aussi cours que ca!
C'est un algorythme super simple!
Cette fonction ne vérifie que la validité du numéro mais ne vérifie pas si le numéro est bien attribuer à quelqu'un ;)

A#
vBt0m.  

PS: ca renvoie 1 si le num est correct sinon 0
  • signaler à un administrateur
    Commentaire de Romaric120 le 08/10/2006 22:28:43

    ou peut t'on verifie les numero de carte de credit sur se site et
    coment calcul t'on les numero de carte de credit .

  • signaler à un administrateur
    Commentaire de boogna le 29/04/2007 16:10:49

    Bonjour et merci pour ce code.

    Il fonctionne bien pour les n° de CB et tous le numéros qui ont un nombre pair de chiffres (CB = 16 chiffres, n°SIRET=14 chiffres, etc...)

    ATTENTION : il y a un bug pour les numéros qui ont un nombre impair de chiffres (exemple : N°SIREN=9 chiffres).

    Je propose de remplacer la ligne n°9 par :
    If (I + Len(Numero)) / 2 = Int((I + Len(Numero)) / 2) Then

    On teste en même temps la parité du I de la boucle et celle de la longueur du N°.

    Qu'en pensez-vous ?

Ajouter un commentaire

Appels d'offres

Pub



CalendriCode

Mai 2008
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Boutique

Boutique de goodies CodeS-SourceS