Здравствуйте, у меня на странице есть форма, которая имеет 4 поля (фио, номер, почта, инн орг). Мне необходимо использовать асинхронный запросы для связи клиент/сервер, главная задача проверить на стороне сервера существует такой инн или нет. Для этого можно обращаться к сайте егрюл или любому другому.
Проблема в чем, отдельно функция проверки работает прекрасно, но как только я проверяю работу формы(по нажатию на кнопку), ничего в ответ не приходит( Если убрать эту функцию, где происходит запрос проверки инн, то в ajax ответ приходит.
Можете помочь, пожалуйста, я новичок и пока не нашел ответа(
<script>
$( document ).ready(function() {
$('#send_data').click(function() {
$.ajax({
url: '/netcat_template/class/feedcall/feedback.php',
type: "POST", //метод отправки
dataType: "html", //формат данных
data: $("#feedback-form").serialize()
}).then((res) => {
result = $.parseJSON(res);
if (!result['fullname'])
alert('Введетие ФИО в формате ФАМИЛИЯ ИМЯ ОТЧЕСТВО!')
if (!result['phone'])
alert('Номер должен содержать 11 цифр и начинаться с 7/8');
if (!result['email'])
alert('Кажется email введен не верно :(')
if (!result['inn'])
alert('Такой организации не существует или ИНН введен неверно :(')
alert(result['inn'])
});
});
});
</script>
Код пхп
<?php
$fullname = trim($_POST["fullname"]);
$phone = $_POST["phone"];
$email = $_POST["email"];
$inn = $_POST["inn"];
$result = array();
function check_inn($in) {
$key='------';
$data_json = json_encode(file_get_contents("https://api-fns.ru/api/egr?req=".$in."&key=".$key), JSON_UNESCAPED_UNICODE); //ТУТ ПРИХОДИТ ПУСТОЙ МАССИВ, если нет такого инн
if ($data_json != '"{}"')
return true;
return false;
}
$result["fullname"] = (count(explode(' ', $fullname)) == 3) ? true : false;
$result["phone"] = (strlen($phone) == 11) ? true : false;
$result["email"] = (strpos($email, '@') && strpos($email, '.')) ? true : false;
//$result["inn"] = $inn;
$result["inn"] = check_inn($inn);
echo json_encode($result);
?>