Как записать ответ API в поле ?

Все вопросы/проблемы по установке и использовании.
Аватара пользователя
SalahievFR
Сообщения: 297
Зарегистрирован: 22 янв 2023, 10:14
Имя: Фанис Салахиев
Откуда: Россия Казань
Контактная информация:

Re: Как записать ответ API в поле ?

Сообщение SalahievFR »

remchik писал(а): 06 апр 2023, 17:08 // получение JSON-строки из API
$json = file_get_contents("http://api.example.com/vin/XUUCD26UJC0001601");

// преобразование JSON-строки в ассоциативный массив
$data = json_decode($json, true);
$vin = $response['result']['vininfo']['reghistory']['ownerShipPeriod'][0]['vin'];
$marka = $response['result']['vininfo']['reghistory']['marka'];
$markaModel = $response['result']['vininfo']['reghistory']['markaModel'];
$year = $response['result']['vininfo']['reghistory']['year'];
$bodyNumber = $response['result']['vininfo']['reghistory']['bodyNumber'];
$color = $response['result']['vininfo']['reghistory']['color'];
$engineVolume = $response['result']['vininfo']['reghistory']['engineVolume'];
$enginePower = $response['result']['vininfo']['reghistory']['enginePower'];
$engineNumber = $response['result']['vininfo']['reghistory']['engineNumber'];
$type = $response['result']['vininfo']['reghistory']['type'];
$pts = $response['result']['vininfo']['reghistory']['pts'];
$vininfo = $data["result"]["vininfo"];
$eaisto = $data["result"]["eaisto"];

foreach ($eaisto as $item) {
$sql = "INSERT INTO eaisto (vin, num, gosnumber, rama, date, dateexpire, kuzov, docname, markamodel, marka) VALUES ('" . $item["vin"] . "', '" . $item["num"] . "', '" . $item["gosnumber"] . "', '" . $item["rama"] . "', '" . $item["date"] . "', '" . $item["dateexpire"] . "', '" . $item["kuzov"] . "', '" . $item["docname"] . "', '" . $item["markamodel"] . "', '" . $
}

Как пример:
Я думаю тут понятно как разобрать JSON, Как вложенные данные, так и нет. И АЛАРМА - Ключики надо стирать :))
Спасибо за ответ
Аватара пользователя
SalahievFR
Сообщения: 297
Зарегистрирован: 22 янв 2023, 10:14
Имя: Фанис Салахиев
Откуда: Россия Казань
Контактная информация:

Re: Как записать ответ API в поле ?

Сообщение SalahievFR »

В общем кому-то будет полезно.
Работает через AJAX запрос.
Код :

Код: Выделить всё

$vin = [262]; // переменная вин кода
$countvin = mb_strlen($vin);

if ($countvin == 12) {
$zap=file_get_contents("https://script.google.com/macros/s/AKfycbznFh9MoxzYNk0QUOjE1ksEYu4QH9F-WM4zrCBW7mV4XX5AskmuV6ds3ZmMg_DEMlgw/exec".$vin);
$result = json_decode($zap, true);
$marka = $result['users']['Make'];
$markaModel = $result['users']['Model'];

echo '<script>
$("#fields_266").val(\'' . addslashes($marka) .'\');
$("#fields_302").val(\'' . addslashes($markaModel) .'\');
  </script>';


 echo "<b>Вин: </b>".$vin."<br>";
 echo "<b>Кол-во символов в ВИН: </b>".$countvin."<br>";
 echo "<b>Ответ из АПИ: </b>".$marka."<br>";
 echo "<b>Ответ из АПИ: </b>".$markaModel."<br>";  
}
ЕвгенийП
Сообщения: 2
Зарегистрирован: 05 июл 2024, 11:07
Имя: Евгений
Откуда: Россия, Сочи

Re: Как записать ответ API в поле ?

Сообщение ЕвгенийП »

SergeyShepelev писал(а): 27 мар 2023, 17:53 Вот
Сергей, мне надо заполнить таблицу на сайте ЕАИСТО из уже существующих данных. Мы официальный техосмотр, на сайт заходим с помощью электронных подписей, причем зарегистрированных на ЕАИСТО получается при оформлении автомобиля мы набираем все данные в программе, с помощью которой мы работаем с приборами, а потом заходим на сайт ЕАИСТО и заполняем все второй раз, т.е. имея компьютер, мы дважды вносим данные. Сейчас появились программы которые заполняют автоматически данные, но они платные, а у нас с этим проблема, тарифы не меняли 11 лет. Я записал в текстовый файл что нужно записать, а как внести все не знаю, JS я не знаю. Спасибо.
SergeyShepelev
Инвестор
Инвестор
Сообщения: 103
Зарегистрирован: 22 янв 2020, 15:01
Имя: Шепелев Сергей Сергеевич
Откуда: Российская Федерация Москва

Re: Как записать ответ API в поле ?

Сообщение SergeyShepelev »

А у ЕАИСТО есть API по которому можно с ними общаться? И из Руководителя автоматически отправлять данные по нажатию кнопки или повесить на событие
ЕвгенийП
Сообщения: 2
Зарегистрирован: 05 июл 2024, 11:07
Имя: Евгений
Откуда: Россия, Сочи

Re: Как записать ответ API в поле ?

Сообщение ЕвгенийП »

раньше они давали как можно заполнять автоматически поля, потом все поля я так понял сделали без Name. У нас получается заполнять через буфер обмена Ctrl+C и Ctrl+V. Работает, но хотелось бы автоматизировать. Я написал автоматически из текстового файла записываю в буфер обмена, по Tab можно перейти на нужное поле, а вот как запустить Ctrl+V фокус теряется. Спасибо.
Ответить