@arsenaljek

Формирование json с вложенными циклами?

Пытаюсь сформировать json.
Проблема в том, что второй цикл с картинками выводит не конкретно относяшиеься изображения к конкретному товару, а все эти изображения "приростают" с каждым товаром.
Массив получается такой
Array
(
    [0] => Array
        (
            [link_tov] => link
            [name_tov] => название товара_1
            [rub_inf] => описание рубрики
            [price_tov] => цена розница
            [price_tov_zavod] => цена опт
            [name] => название категории
            [link] => урл категории
            [images] => https://изображение_1.png;https://изображение_2.png;https://изображение_3.png;
        )

    [1] => Array
        (
            [link_tov] => link
            [name_tov] => название товара_2
            [rub_inf] => описание рубрики
            [price_tov] => цена розница
            [price_tov_zavod] => цена опт
            [name] => название категории
            [link] => урл категории
            [images] => Опять идёт изображение_1 из прошлого товара;Опять идёт изображение_2 из прошлого товара;Опять идёт изображение_3 из прошлого товара; А вот тут добавляется уже нормальное изображение относяшиеся к данному товару
        )

)

Сам код формирования массива
<?php
while($row = mysqli_fetch_assoc($resultProduct)) {
    $sql1 = "SELECT * FROM `images` WHERE `tovar_id` = '".$row['id_tov']."' AND type = 'standart' LIMIT 10 ";
    $result1 = mysqli_query($link,$sql1);
    while($img = mysqli_fetch_assoc($result1)) {
        $images .= $img['url'];
    }
    $use = strip_tags($row['use']);
    $price[]=array("link_tov"=>$row['link_tov'],"name_tov"=>$row['name_tov'],"rub_inf"=>$row['rub_inf'],"use"=>$use,"price_tov"=>$row['price_tov'],"price_tov_zavod"=>$row['price_tov_zavod'],"name"=>$row['status'],"link"=>$row['link'],"images"=>$images);
}
?>
  • Вопрос задан
  • 48 просмотров
Пригласить эксперта
Ответы на вопрос 1
@qwermus
Имаджес обнулять надо. В целом любую используемую переменную изначально надо определить перед тем, как использовать. Т.е. сразу после первого while ставишь
$images = '';
И теперь при каждом новом товаре имаджес будут чистые.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы