Как записать ответ API в поле ?
-
- Инвестор
- Сообщения: 103
- Зарегистрирован: 22 янв 2020, 15:01
- Имя: Шепелев Сергей Сергеевич
- Откуда: Российская Федерация Москва
Re: Как записать ответ API в поле ?
В данном варианте проходиться циклом по json или если Вам нужны только 2 этих параметра добавить еще 1 переменную
- SalahievFR
- Сообщения: 297
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация:
Re: Как записать ответ API в поле ?
нам нужно больше параметров, тут просто про два спросил. Подскажите как пройтись циклом?SergeyShepelev писал(а): ↑27 мар 2023, 16:31 В данном варианте проходиться циклом по json или если Вам нужны только 2 этих параметра добавить еще 1 переменную
-
- Инвестор
- Сообщения: 103
- Зарегистрирован: 22 янв 2020, 15:01
- Имя: Шепелев Сергей Сергеевич
- Откуда: Российская Федерация Москва
- SalahievFR
- Сообщения: 297
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация:
Re: Как записать ответ API в поле ?
В общем я смог весь ответ записать в поле, а отдельно нужные параметры брать с ответа и назначать в переменные не смог понять как ) Подскажите, пожалуйста, конкретным кодом. Буду благодарён.SergeyShepelev писал(а): ↑27 мар 2023, 17:53 Вот
https://translated.turbopages.org/proxy ... -using-php
Сейчас мой код так выглядит:
Код: Выделить всё
// Инициализация сеанса cURL
$ch = curl_init();
// Установка URL
curl_setopt($ch, CURLOPT_URL, "https://data.av100.ru/api.ashx?key=b0abcafe-dafa-4a4a-8ce0-f327aceab962&vin=".[262]);
// Установка CURLOPT_RETURNTRANSFER (вернуть ответ в виде строки)
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Выполнение запроса cURL
//$output содержит полученную строку
$output = curl_exec($ch);
// закрытие сеанса curl для освобождения системных ресурсов
curl_close($ch);
// Запись данных вполя
db_query("update app_entity_25 set field_266='{$output}' where id={$item_id}");
-
- Инвестор
- Сообщения: 103
- Зарегистрирован: 22 янв 2020, 15:01
- Имя: Шепелев Сергей Сергеевич
- Откуда: Российская Федерация Москва
Re: Как записать ответ API в поле ?
Ну здесь Вы берете полностью весь ответ не преобразовывая я его в json.
Попробуйте его после получения преобразовать
$result = json_decode($output,true);
$marka = $result['marka'];
$model = $result['model'];
и. тд
потом добавляете в базу:
db_query("update app_entity_26 set field_246='{$marka}', field_n = '{$model}' where id={$item_id}");
Включите отладку и посмотрите что прилетает в переменные
Попробуйте его после получения преобразовать
$result = json_decode($output,true);
$marka = $result['marka'];
$model = $result['model'];
и. тд
потом добавляете в базу:
db_query("update app_entity_26 set field_246='{$marka}', field_n = '{$model}' where id={$item_id}");
Включите отладку и посмотрите что прилетает в переменные
- SalahievFR
- Сообщения: 297
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация:
Re: Как записать ответ API в поле ?
При включении отладки система показывает мой код, не выполняет его.
-
- Инвестор
- Сообщения: 103
- Зарегистрирован: 22 янв 2020, 15:01
- Имя: Шепелев Сергей Сергеевич
- Откуда: Российская Федерация Москва
Re: Как записать ответ API в поле ?
Пришлите скрин части кода что отображается в переменныхSalahievFR писал(а): ↑04 апр 2023, 14:51 При включении отладки система показывает мой код, не выполняет его.
-
- Инвестор
- Сообщения: 103
- Зарегистрирован: 22 янв 2020, 15:01
- Имя: Шепелев Сергей Сергеевич
- Откуда: Российская Федерация Москва
Re: Как записать ответ API в поле ?
Можете в личку
Re: Как записать ответ API в поле ?
// получение 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, Как вложенные данные, так и нет. И АЛАРМА - Ключики надо стирать
)
$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, Как вложенные данные, так и нет. И АЛАРМА - Ключики надо стирать
![Smile :)](./images/smilies/icon_e_smile.gif)
***
Тружусь как пчелка
***
SQL,BpmOnline,Creatio,BpmSoft,.NET,SAP WMS,MS SQL Server,Windows Server,IIS
Тружусь как пчелка
***
SQL,BpmOnline,Creatio,BpmSoft,.NET,SAP WMS,MS SQL Server,Windows Server,IIS
- SalahievFR
- Сообщения: 297
- Зарегистрирован: 22 янв 2023, 10:14
- Имя: Фанис Салахиев
- Откуда: Россия Казань
- Контактная информация:
Re: Как записать ответ API в поле ?
Да ключи пробные, оставил, чтобы точно по ответу апи дали пример кода)