如何使所有 PHP 回显值进入 HTML Table
How to make all PHP echo values go into a HTML Table
我该如何解决这个问题,您在下图中看到,我的代码成功创建了 table 并正确回显了第一个项目,但是如果将任何其他项目添加到购物车,它会显示table 下方,边界外,不在一排。
期望的结果: 对于 'Sara Lee Muffin' 和数量,价格(示例)在 table 内它自己的行和删除按钮。 (基本上与烤三明治完全相同,但在它下面)
我的代码在图片下方。
<body>
<br>
<h3>Current shopping cart:</h3>
<table style="border: 1px solid black;">
<?php
//If the cart is not empty, then create a table for the Items
if(!empty($_SESSION['shopping_cart'])) {
?>
<tr><th>Item name</th><th>Quantity</th><th>Price</th><th></th></tr>
<?php
if(!empty($_SESSION['shopping_cart'])) {
foreach($_SESSION['shopping_cart'] as $keys => $values) {
?>
<tr>
<td style="text-align:center"><?php echo $values['item_name'];?></td>
<td style="text-align:center"><?php echo $values['item_quantity'];?></td>
<td style="text-align:center">$<?php echo $values['item_price']*$values['item_quantity'];?>
</td>
<td><form action="" method="get">
<input type="submit" class="btn btn-danger" name="remove" value="Remove">
<input type="hidden" name="hidden_id" value="<?php echo $values['item_id']; ?>">
</form></td>
</tr>
</table>
<br>
<?php
}
}
?>
<form action="" method="get">
<input type="submit" class="btn btn-primary" name="payment" value="Confirm">
</form>
<?php
}
else {
echo "No Items added yet.";
?><br>
<?php
}
?>
</body>
您的 foreach 循环中有一个结束 </table>
,因此数组中的每个项目都会打印出一个 </table>
标记。
您应该在循环后添加另一个购物车检查,如果存在,则打印结束 </table>
标记。
我该如何解决这个问题,您在下图中看到,我的代码成功创建了 table 并正确回显了第一个项目,但是如果将任何其他项目添加到购物车,它会显示table 下方,边界外,不在一排。
期望的结果: 对于 'Sara Lee Muffin' 和数量,价格(示例)在 table 内它自己的行和删除按钮。 (基本上与烤三明治完全相同,但在它下面)
我的代码在图片下方。
<body>
<br>
<h3>Current shopping cart:</h3>
<table style="border: 1px solid black;">
<?php
//If the cart is not empty, then create a table for the Items
if(!empty($_SESSION['shopping_cart'])) {
?>
<tr><th>Item name</th><th>Quantity</th><th>Price</th><th></th></tr>
<?php
if(!empty($_SESSION['shopping_cart'])) {
foreach($_SESSION['shopping_cart'] as $keys => $values) {
?>
<tr>
<td style="text-align:center"><?php echo $values['item_name'];?></td>
<td style="text-align:center"><?php echo $values['item_quantity'];?></td>
<td style="text-align:center">$<?php echo $values['item_price']*$values['item_quantity'];?>
</td>
<td><form action="" method="get">
<input type="submit" class="btn btn-danger" name="remove" value="Remove">
<input type="hidden" name="hidden_id" value="<?php echo $values['item_id']; ?>">
</form></td>
</tr>
</table>
<br>
<?php
}
}
?>
<form action="" method="get">
<input type="submit" class="btn btn-primary" name="payment" value="Confirm">
</form>
<?php
}
else {
echo "No Items added yet.";
?><br>
<?php
}
?>
</body>
您的 foreach 循环中有一个结束 </table>
,因此数组中的每个项目都会打印出一个 </table>
标记。
您应该在循环后添加另一个购物车检查,如果存在,则打印结束 </table>
标记。