- Added Predis library for Redis connection (no PHP extension required) - Server-side SMS code generation and storage in Redis - Rate limiting and brute-force protection - Integration with n8n webhook for SMS sending - Environment variables moved to .env file - Fixed policy verification endpoint - Added file-based fallback if Redis unavailable
2.4 KiB
2.4 KiB
Исправление проверки полиса
Проблемы, которые были исправлены:
- ✅ Хардкод кредов MySQL - теперь используются переменные из
.env - ✅ Отсутствие логирования - добавлено логирование в
logs/policy_check.log - ✅ Улучшена обработка ошибок - более детальные сообщения об ошибках
- ✅ Нормализация номера полиса - добавлена замена кириллической "А" на латинскую "A"
- ✅ Заголовки JSON - добавлены правильные заголовки для JSON ответов
Что нужно добавить в .env:
Добавьте следующие переменные в .env файл (если их еще нет):
# MySQL ERV (для проверки полисов)
MYSQL_ERV_HOST=localhost
MYSQL_ERV_USER=ci20465_erv
MYSQL_ERV_PASSWORD=c7vOXbmG
MYSQL_ERV_DB=ci20465_erv
Если переменные не указаны, используются значения по умолчанию (для обратной совместимости).
Как работает проверка полиса:
- Пользователь вводит номер полиса
- Нажимает кнопку "Проверить наличие полиса"
- JavaScript отправляет AJAX запрос на
database.php?action=user_verify database.php:- Подключается к БД MySQL (ci20465_erv)
- Ищет полис в таблице
lexrpiorityпо полюvoucher - Проверяет тарифы (должны быть в списке валидных)
- Возвращает результат
Логирование:
Все операции логируются в logs/policy_check.log:
- Попытки подключения к БД
- Номера полисов (частично, для безопасности)
- Результаты проверки
- Ошибки
Проверка работы:
- Откройте форму
- Введите номер полиса
- Нажмите "Проверить наличие полиса"
- Проверьте логи:
tail -f logs/policy_check.log
Статус:
✅ Исправлено и готово к использованию!