我的团队和我已经用php在餐厅的管理员中建立了一个数据库,目前正在客户仪表板上工作。我使用每个循环在一个仪表板选项卡中显示完整的订单,并使代码正常工作,但是现在它仅输出常规的黑色文本。我想知道如何设置样式以将行输出为网格,类似于引导网格。
我试图只将具有行和列的容器添加到foreach回声本身,但是它并没有按照我的预期工作。
<div id="CurrentOrders" class="tabcontent" style="margin-left: 24px">
<!-- This information will be pulled from the Orders table in the DB -->
<h3>Current Orders</h3>
<p>
<div class="container">
<?php
foreach ($orderno as $order) {
$n = $order['OrderNo'];
$menunamequery = "SELECT * FROM OrderItem WHERE OrderNo = '{$n}'";
$currentorders = getRows($menunamequery);
foreach ($currentorders as $currentorder) {
echo "Order Number -"." ".$currentorder['OrderNo']." , "."Order -"." ".$currentorder['MenuName']." , "."Quantity -"." ".$currentorder['Quantity']."<br>";
}
}
?> </div>
</p>
</div>
预期结果是输出的这些行具有某种网格布局,当前实际结果仅为纯文本。
很抱歉,如果这是一个不好的问题,我的团队和我刚刚在本学期学习了php,并希望继续做得更好。任何帮助将不胜感激。
答案 0 :(得分:0)
您可以简单地从PHP输出HTML:
echo '<span style="color: red">'.$currentorder['MenuName'].'</span>';
但是,建议您清理输出,这样没人可以通过在数据库中放置标签来“创建HTML”;
echo '<span style="color: red">'.htmlspecialchars($currentorder['MenuName']).'</span>';
这完全符合它的意思;使用特殊字符制作HTML实体。例如,>
将被打印为>
,浏览器将安全地将其渲染为>
,而不是试图将其解释为HTML元素的右括号。
或者,您可以根据需要直接通过关闭和打开PHP标签直接编写HTML:
// PHP Code
?>
<span class="some-class"><?=htmlspecialchars($currentorder['MenuName'])?></span>
<?php
// More PHP Code
您可能还想研究一下模板引擎,以使您更轻松,尽管这取决于项目,是否值得您考虑一下,因为这需要一点学习技巧。 / p>