У меня есть одна проблема с отображением записей из моей базы данных, потому что я работаю со средними таблицами. Но я попытаюсь объяснить. У меня есть следующие таблицы в моей базе данных:Отображение результатов из базы данных
- типа (идентификатора, NAAM)
- магазины (идентификатора, НА, TYPE_ID ... не важен)
- продукт (ID, naam, ... не важно)
- product_shop_tt (идентификатора, product_id, shop_id) - это мой средний стол между продуктом EN магазинов
- заказов (идентификатора, user_id, статус)
- order_details (идентификатор, order_id, идентификатор_пользователя, product_shop_tt_id)
- пользователь (идентификатора, НА, не имеет значение)
Теперь у меня есть следующий код:
<?php
$rezKor = mysqli_query($kon, "SELECT * FROM korisnici WHERE email = '". $_COOKIE["korisnik"] ."' LIMIT 1");
$redKor = mysqli_fetch_assoc($rezKor);
$user_id = $redKor["id"];
$rezOrders = mysqli_query($kon, "SELECT * FROM orders WHERE user_id = ". $user_id ." AND status = 0 ORDER BY id DESC LIMIT 1");
$redOrders = mysqli_fetch_assoc($rezOrders);
$brRez = mysqli_num_rows($rezOrders);
$rezOrdDetails = mysqli_query($kon, "SELECT * FROM order_details WHERE order_id = ". $redOrders["id"] ."");
while($redOrdDetails = mysqli_fetch_assoc($rezOrdDetails)){
$rezTT = mysqli_query($kon, "SELECT * FROM product_shop_tt WHERE id = ". $redOrdDetails["product_shop_tt_id"] ."");
$redTT = mysqli_fetch_assoc($rezTT);
$brTT = mysqli_num_rows($rezTT);
$i = 0;
$rezShop = mysqli_query($kon, "SELECT * FROM shops WHERE id = ". $redTT["shop_id"] ."");
while($redShop = mysqli_fetch_assoc($rezShop)){
if($i == 0){
echo $redShop["naam"] . "<br />";
}
$i++;
$rezProdukt = mysqli_query($kon, "SELECT * FROM producten WHERE id = ". $redTT["product_id"] ."");
while($redProduct = mysqli_fetch_assoc($rezProdukt)){
echo "<br />Ime produkta : " . $redProduct["naam"] . "<br />";
}
}
}
echo "<div style=\"clear:both;\"></div><div class=\"footer\" style=\"position: fixed;bottom: 0;width: 100%;left:0;\">
<a href=\"home.php\" title=\"Ga terug\" class=\"col-xs-6 col-sm-6 btn btn-info\"><span class=\"glyphicon glyphicon-chevron-left\"></span> Niets toevoegen</a>
<button class=\"col-xs-6 col-sm-6 btn btn-danger\" type=\"submit\" name=\"btnNaruci\" id=\"btnNaruci\">
Leg in winkelmand <span class=\"glyphicon glyphicon-chevron-right\"></span><span class=\"glyphicon glyphicon-chevron-right\"></span><span class=\"glyphicon glyphicon-chevron-right\"></span>
</button>
</div>";
?>
Я хочу, чтобы получить следующий вывод:
<h1>Type of the shops</h1><br />
<h3>The name of the first shop</h3>
<ul>
<li>Product from the first shop</li>
<li>Product from the first shop</li>
</ul><br />
<h3>The name of the second shop</h3>
<ul>
<li>Product from the second shop</li>
<li>Product from the second shop</li>
</ul><br /><br />
<h1>Type of the shops</h1><br />
<h3>The name of the next shop</h3>
<ul>
<li>Product from shop</li>
<li>Product from shop</li>
</ul><br />
<h3>The name of the new shop</h3>
<ul>
<li>Product from the new shop</li>
<li>Product from the new shop</li>
</ul>
Но мой код я получаю следующий:
<div>Type of the shops</div>
<div>The name of the first shop</div>
<div>Product from the first shop</div><br />
<div>Type of the shops</div>
<div>The name of the first shop</div>
<div>Product from the first shop</div><br />
<div>Type of the shops</div>
<div>The name of the first shop</div>
<div>Product from the first shop</div><br />
Таким образом, я хочу показать все продукты из того же магазина ниже имени этого магазина. Теперь я получаю для каждого продукта название магазина и тип магазина.
Надеюсь, я смог хорошо объяснить.
Заранее за вашу помощь.
Этот код может быть уменьшен с помощью инструкции 'JOIN'. Но если вы хотите сохранить свой текущий формат, вам нужно сохранить имя своего магазина, т.е. '$ redShop [" naam "]' переменной, и только эхо, если это не текущее значение. например, '$ currentShop = ''; ... if ($ redShop ["naam"]! = $ currentShop) {echo $ redShop ["naam"]; $ currentShop = $ redShop ["naam"];} '. – Sean
Спасибо за ответ.Я собираюсь попробовать это. – Boky