У меня возникли проблемы с попыткой получить вложенный < ul> внутри цикла while. Я не уверен, что это возможно, поэтому я открыт для альтернатив.Как создать вложенный список внутри цикла while?
Here's a quick image of what my database looks like and what i'm trying to achieve.
Вот мой SQL
SELECT *
FROM drinks_category, drinks_lookup, drinks
WHERE drinks.drink_id = drinks_lookup.drink_id
AND drinks_lookup.drinks_category_id = drinks_category.drinks_category_id
ORDER BY drinks_category.drinks_category_title
Вот мой выход PHP
$result = $conn->query($sql) or die(mysqli_error());
$last_category = 0;
while ($row = $result->fetch_assoc()) {
if($row['drinks_category_id'] != $last_category) {
echo "<h1>" . $row['drinks_category_title'] . "</h1>";
}
echo "<p>" . $row['drink_name'] . "</p>";
$last_category = $row['drinks_category_id'];
}
Im используя MySQLi и PHP. Заранее спасибо!
Вам действительно нужны таблица поиска (category_id легко может храниться в напитках Таблица)? И лично я бы разрешил это с двумя запросами, один для категории, один для самих напитков (я не знаю о лучшей практике в этом случае) – kero
Может ли напиток иметь несколько категорий? Если это невозможно, вам не нужна таблица соединений (та, которая связывает Drinks с категориями). –
Некоторые напитки действительно подпадают под несколько категорий. Спасибо за предложения! –