Валидация данных кредитной карты. PHP CC Validate.

Author Автор: Роман Чернышов    Опубликовано: 8 октября 2012

С завидной периодичностью мне приходится реализовывать на сайта, интернет магазинах, различные интерфейсы приема платежей. Зачастую вся работа сводится к подключению написанных мною модулей или использование готовых решений представленных платежными системами. Но на ряду со всем, стоит и простая задача, организовать валидацию введенных пользователем данных кредитной карты.

Не смотря на то, что задача кажется простой, решения всегда приходят разные и в какой-то момент я начал использовать PHP класс валидации CC (кредитной карты).

Все, что требуется это подключить скрипт-класс и создать соответствующий объект передав в него параметры CC полученных от пользователя или взятых из БД, в зависимости от типа задачи.

Пример работы:
require_once ‘ccvalidator.class.php’;

 $ccv = new CCValidator('IVAN PETROV', CCV_VISA, '4117733906179443', 3, 2015);
  if ($validCard = $ccv->validate())
  {
    if ($validCard & CCV_RES_ERR_HOLDER)
    {
      echo 'Имя держателя карты указанно некорректно<br />';
    }
    if ($validCard & CCV_RES_ERR_TYPE)
    {
      echo 'Неправильный тип карты<br />';
    }
    if ($validCard & CCV_RES_ERR_DATE)
    {
      echo 'Не верная дата годности карты<br />';
    }
    if ($validCard & CCV_RES_ERR_FORMAT)
    {
      echo 'Неверный формат номера карты<br />';
    }
    if ($validCard & CCV_RES_ERR_NUMBER)
    {
      echo 'Неверный номер карты<br />';
    }
  }
  else
  {
    echo 'Информация о кредитной карте - верна!<br />';
  }

Скрипт проверяет следующие параметры:

  • Имя держателя кредитной карты
  • Тип кредитной карты
  • Номер кредитной карты
  • Формат номера кредитной карты
  • Срок действия кредитной карты

Недостатков в работе данного скрипта замечено не было, скрипт был протестирован в работе со всеми типами кредитных карт.

Скачать класс валидации кредитной карты на PHP.

Оставить комментарий

Автор блога
Роман Чернышов
Веб-разработчик,
Full Stack
Senior, Architect
PHP, JavaScript, Node.JS, Python, HTML 5, CSS 3, MySQL, Bash, Linux Admin
Заказать работу
предложить оффер

Моя книга
Книга. Веб-разработчик. Легкий вход в профессию
Печатная книга
Веб-разработчик.
Легкий вход в профессию
Оформить предзаказ
Последние вопросы
Список вопросов
Последние комментарии
Меню

Archive

Мои проекты
Insurance CMS Love Crm CMS Совместные покупки Мой PHP Framework Хостинг для моих клиентов Лицензии на мой софт и поддержка