Использование вызова API вместо таблицы MySQL и присоединение внутри цикла php while - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть оператор вставки, который в данный момент работает, но он вставляется в таблицу mysql, соединенную с другой, и использует параметры, связанные с предыдущим запросом

$insertProduct = "
        INSERT INTO productData (id,product,categoryID)
        SELECT 
            id, 
            product,
            categoryID

        FROM skus s
        INNER JOIN category sg
            ON s.categoryID = sg.id  
        WHERE  s.product=:product AND s.detail1=:dtl1 AND s.detail2=:dtl2
    ";

Это работает отлично, но теперь моя исходная таблица и таблица, к которой я присоединяюсь, устарели и удалены, но преобразованы в API, который уже существует.

Я могу получить нужные мне данные из API в вызове curl, вот так

$ch = curl_init();

curl_setopt_array($ch, array(
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_URL => 'http://api/testProd',
    CURLOPT_HTTPHEADER => array(
        'accept: application/json',
        'X-API-Key: /*key omitted*/',
        'X-Fields: id,product.category.id'
    )
));

$resp = curl_exec($ch);

print_r($resp);

curl_close($ch);

Это возвращает только до 1000 записей, а в источнике API их больше.

У меня вопрос: могу ли я реорганизовать мою вставку для использования вызова API вместо исходной таблицы и объединенной таблицы?

Это те же самые точные данные, но моя вставка находится в цикле while, поэтому в основном в цикле я смотрю на предыдущие параметры и выполняю вставку на основе этих параметров, вызывая API.

Так что если dtl1 и dtl2 из моих параметров равны 'Red' и '4' соответственно, моя вставка, выполняющаяся в цикле while, будет смотреть на API для продукта с 'Red' и '4' как эти детали.

Надеюсь, я смогу перевести это на использование вызова API вместо моей таблицы mysql.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...