Tôi đang cố gắng xác thực số thẻ tín dụng bằng jQuery nhưng tôi không muốn sử dụng plugin xác thực, có plugin nào khác để thực hiện việc này không?Xác thực thẻ tín dụng với Jquery
Trả lời
http://en.wikipedia.org/wiki/Luhn_algorithm
Bạn có thể giảm thiểu điều này bên dưới thành một dấu chân rất nhỏ trong mã của bạn.
function isCreditCard(CC)
{
if (CC.length > 19)
return (false);
sum = 0; mul = 1; l = CC.length;
for (i = 0; i < l; i++)
{
digit = CC.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)
return (true);
else
return (false);
}
+1 - Luhn sẽ là cách duy nhất để 'xác nhận' nó ở phía khách hàng. –
Việc kiểm tra Luhn thực sự chỉ hữu ích cho việc phát hiện lỗi chuyển vị. Bạn cũng sẽ cần phải kiểm tra phạm vi nhận dạng người phát hành (sáu chữ số đầu tiên của số thẻ) là hợp lệ. – PaulG
Nếu bạn muốn chắc chắn rằng đó là số thẻ hợp lệ, bạn sẽ cần phải kiểm tra nhiều hơn số Luhn.
Các Luhn chữ số chỉ dùng để kiểm tra lỗi chuyển vị, và có thể dễ dàng bị giả mạo với những con số như 22222222222222222
Sáu chữ số đầu tiên của số thẻ nên được kiểm tra. Những chữ số này được gọi là số nhận dạng người phát hành và có thể được sử dụng để đảm bảo rằng số nằm trong phạm vi được công nhận. Thật không may bạn sẽ đấu tranh để tìm một danh sách toàn diện của IIN, không ít bởi vì các tổ chức phát hành liên tục bổ sung và loại bỏ các phạm vi. Wikipedia có một cái nhìn tổng quan rất cơ bản mặc dù: Bank card number
Nếu bạn có thể xác định loại thẻ từ IIN, bạn có thể bị đâm khi xác nhận độ dài của số đó.
Trừ khi bạn có lý do rất tốt, việc sử dụng một thứ gì đó giống như trình cắm thêm xác thực dễ dàng hơn nhiều.
tôi khuyên bạn nên sử dụng biểu hiện thường xuyên ... Bạn có thể kiểm tra kho của tôi, tôi có một đoạn mã để xác nhận Visa, Master card, Discovery, american express và mã an ninh
https://github.com/leojavier/RegexCollection
Ghi ... chỉ vì bạn giới hạn số lượng chữ số không có nghĩa là nó sẽ đúng.
ví dụ:
- Tất cả số thẻ Visa bắt đầu bằng 4. Thẻ mới có 16 chữ số.
- Tất cả số MasterCard bắt đầu bằng các số từ 51 đến 55. Tất cả đều có 16 chữ số. và cứ thế ...
Chỉ mục.html là mẫu, để cho bạn biết cách sử dụng! Vui lòng viết cho tôi nếu bạn có bất kỳ câu hỏi nào :)
- 1. Xác thực chi tiết thẻ tín dụng
- 2. Lưu trữ thông tin thẻ tín dụng
- 3. Thẻ tín dụng - Thẻ trên dịch vụ tệp?
- 4. Triển khai hệ thống thẻ tín dụng?
- 5. Xác thực thẻ thông minh với ASP.NET
- 6. InputType thích hợp cho thẻ tín dụng
- 7. Lưu trữ thẻ tín dụng trực tuyến?
- 8. xác thực jquery với cuộc gọi ajax
- 9. HTML Parser xác thực thẻ
- 10. jQuery xác thực với số trường động
- 11. Xác thực Jquery để xác thực URL
- 12. Sử dụng SecureString cho số thẻ tín dụng
- 13. Nhận thanh toán bằng thẻ tín dụng trong ứng dụng
- 14. Xác thực hộp thoại UI của jQuery mà không sử dụng các thẻ <form>
- 15. Làm cách nào để xác thực giá trị combobox jQuery UI với Plugin xác thực jQuery?
- 16. Cổng thanh toán bằng thẻ tín dụng trong PHP?
- 17. Xác thực Ajax Sử dụng jquery?
- 18. Implenting Xử lý thẻ tín dụng trong PHP MySql Site
- 19. Thay thế cho lưu trữ thông tin thẻ tín dụng
- 20. Cách kiểm tra tương tác thẻ tín dụng?
- 21. Thanh toán PayPal - tab thẻ tín dụng theo mặc định
- 22. Thẻ tín dụng Jack điện thoại tai nghe Vuốt với ứng dụng trình duyệt
- 23. Phí nhà phát triển Android không có thẻ tín dụng?
- 24. iOS - Tích hợp thanh toán bằng thẻ tín dụng
- 25. Xác thực jQuery onblur
- 26. Làm cách nào để biết sự khác biệt giữa Thẻ Ghi nợ và Thẻ Tín dụng
- 27. Xác thực JQuery MVC.net
- 28. Xác thực NTLM và thẻ thông minh
- 29. Chi tiết thẻ tín dụng sandbox Paypal không hoạt động
- 30. Biến loại thẻ tín dụng cho REST REST API
Có vấn đề gì với plugin xác thực? – Bartek
Yeah? Thực tế là Google không thực sự trả về bất cứ điều gì rõ ràng hơn là xác nhận plugin là đủ tốt gợi ý – Bostone