#php #html #mysql
#php #HTML #mysql
Вопрос:
Я отображаю все элементы в моей таблице базы данных
В моей базе данных также есть таблица категорий, которая содержит эти значения
Элемент таблицы имеет атрибуты (ItemId, Name, Price, CategoryID (FK)) Категория таблицы имеет атрибуты (CategoryID (PK), имя, описание)
CategoryID Name
1 Pizza
2 Burgers
Теперь, когда я отображаю элементы, они отображаются в таком порядке
Item Name Category Price(USD)
Cheese Burger 2 7
Chicken Pizza 1 10
вместо идентификатора категории я хочу, чтобы название категории отображалось следующим образом
Item Name Category Price(USD)
Cheese Burger Burger 7
Chicken Pizza Pizza 10
Вот мой SQL-запрос, который я написал
if(isset($_POST['search1'])){
$searchKey1 = $_POST['search1'];
$sql1 = "SELECT * FROM item WHERE Name LIKE '%$searchKey1%'";
}
else{
$sql1 = "SELECT item.*,category.Name FROM item, category where item.CategoryID=category.CategoryID";
$searchKey1 ="";
}
$result1 = mysqli_query($conn, $sql1);
html-часть
<p><strong>Displaying Menu by Item</strong></p>
<p><a href="add_items.php">Add Items</a></p>
<table class="table table-bordered">
<tr>
<th>Item Name</th>
<th>Category</th>
<th>Price</th>
<th colspan="2">Actions</th>
</tr>
<?php while($row = mysqli_fetch_object($result1)) {?>
<tr>
<td><?php echo $row->Name?></td>
<td><?php echo $row->CategoryID?></td>
<td><?php echo $row->Price?></td>
<td><a href="delete_item.php?id=<?php echo $row->ItemID ?>"><i class="fa fa-trash"></i>Delete</a></td>
<td><a href="edit_items.php?id=<?php echo $row->ItemID ?>"><i class="fas fa-pencil-alt"></i>Edit</a></td>
</tr>
<?php } ?>
Ответ №1:
Вы можете добавить псевдоним во втором запросе:
$sql1 = "SELECT item.*,category.Name as categoryName FROM item, category where item.CategoryID=category.CategoryID";
И измените значения столбца категории:
<td><?php echo $row->categoryName?></td>