Kom ihåg mig?
Home Menu

Menu


Validering kort

Ämnesverktyg Visningsalternativ
Oläst 2006-01-21, 20:20 #1
jaffa jaffa är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 61
jaffa jaffa är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 61
Någon som vet hur man gör om man vill kolla om ett Visa/MC/amex etc kort är giltigt utan att ta betalt av kunden?

Om man t.ex vill ha uppgifterna för att garantera en senare betalning eller en beställning. Har hört att det finns något som kallas mod 10 metoden för detta som ska innebära att man jobbar utifrån de givna parametrar som finns för korten (börjar på vissa siffror etc.). En sorts validering liknande den man kan göra för att kolla att en e-post adress är korrekt angiven.
jaffa är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-21, 20:33 #2
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
Om du bara vill kolla om det är giltigt kortnummer så kan du ju använda detta scriptet (asp) som jag hittade på internet, men det bevisar ju egentligen ingenting så nyttan av användandet är nog ganska begränsad.
Kod:
  function isCreditCard(cardNo) 
    isCreditCard = false 
    lCard=len(cardNo) 
    lC=right(cardNo,1) 
    cStat=0 
    for i=(lCard-1) to 1 step -1 
      tempChar= mid(cardNo,i,1) 
      d=cint(tempChar) 
      if lcard mod 2 = 1 then 
        temp=d*(1+((i+1) mod 2)) 
      else 
        temp=d*(1+(i mod 2)) 
      end if 
      if temp < 10 then 
        cStat = cStat + temp 
      else 
        cStat = cStat + temp - 9 
      end if 
    next 
    cStat = (10-(cStat mod 10)) mod 10 
    if cint(lC) = cStat then isCreditCard = true 
  end function
Lindahl är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-22, 00:44 #3
nicces avatar
nicce nicce är inte uppkopplad
Medlem
 
Reg.datum: Jan 2004
Inlägg: 141
nicce nicce är inte uppkopplad
Medlem
nicces avatar
 
Reg.datum: Jan 2004
Inlägg: 141
Här har du en för javascript också....

Kod:
	function checkcardnumber(CardNumber)
	{
 var RegularExpression = /^[0-9]{13,16}$/i;
  
 if (! ValidateField(RegularExpression, CardNumber))
 {
 	alert('Malformed Card number.');
 	return false;
 }
 	
 sum = 0; mul = 1; l = CardNumber.length;
 for (i = 0; i < l; i++) 
 {
 	digit = CardNumber.substring(l-i-1,l-i);
 	tproduct = parseInt(digit ,10)*mul;
 	if (tproduct >= 10)
  sum += (tproduct % 10) + 1;
 	else
  sum += tproduct;
 	if (mul == 1)
  mul++;
 	else
  mul--;
 }
 if (!(sum % 10) == 0)
 {
 	alert('Malformed Card number.');
 	return false;
 }
	}
	function ValidateField(pattern, FieldStr)
	{
 return pattern.test(FieldStr);
	}
nicce är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-22, 12:50 #4
jaffa jaffa är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 61
jaffa jaffa är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 61
Ok, tack. Men vad gör dessa kodsnuttar mer exakt? kollar de så att kortnumret är ett riktigt kortnummer enligt de regler som finns för hur dessa ska vara uppställda?

kan man också kontrollera giltighetstiden på nåt sätt eller är det endast genom att debitera kortet?

hälsn.
jaffa är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-22, 12:56 #5
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
De kollar bara att kontrollsiffran är korrekt, och säger ingenting annat. Du måste debitera för att vara säker.
Lindahl är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-23, 12:39 #6
shibaja shibaja är inte uppkopplad
Medlem
 
Reg.datum: Jan 2004
Inlägg: 63
shibaja shibaja är inte uppkopplad
Medlem
 
Reg.datum: Jan 2004
Inlägg: 63
Går ju att göra en "authorize" men ingen "capture", dvs enbart reservera beloppet på kundens kort.
shibaja är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-01-23, 16:02 #7
jaffa jaffa är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 61
jaffa jaffa är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 61
iochför sig men då blir man ju inte så värst populär hos inlösaren efter ett tag om man gör många sådana. Vill inte heller reservera belopp på kundens kort. uppgifterna ska fungera som en garanti för min leverantör från kunden. Men kunden ska betala hos leverantören senare.

men jag antar att det enda helt säkra sättet är att debitera en förskottsbetalning eller liknande. de andra scripten etc. ökar mest bara sannolikheten för att kortet är riktigt om jag förstått allt rätt.
jaffa är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 06:00.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017