我建立了一个简单的网上商店,我需要在其中处理订购的产品。订单非常好,带有订购产品的 ID。
我希望在显示订单所有详细信息的页面上显示产品的名称和价格。可惜没效果。。
这是我的尝试:
获取订购产品的代码:
$query2 = mysql_query("SELECT * FROM orders_products WHERE order_id='".$_GET['order']."'");
while ($line2 = mysql_fetch_assoc($query2))
{
$row2[] = $line2;
$smarty->assign('row2', $row2);
}
(尝试)获取产品名称和价格:
$query4 = mysql_query("SELECT * FROM products WHERE id ='".$row2['product_id']."'");
while ($line4 = mysql_fetch_assoc($query4))
{
$row4[] = $line4;
$smarty->assign('row4', $row4);
}
显示它(请原谅我在 html 中使用了一些荷兰语单词):
<div class="module">
<h2><span>Bestelde Producten</span></h2>
{section name=row2 loop=$row2}
{section name=row4 loop=$row4}
<div class="module-table-body">
<table id="bestelling" class="bestelling">
<thead>
<tr>
<th style="width:3%">#</th>
<th style="width:10%">Naam</th>
<th style="width:10%">Bedrag</th>
<th style="width:3%">Aantal</th>
</tr>
</thead>
<tbody>
<tr>
<td>{$row2[row2].id}</td>
<td>{$row4[row4].name}</td>
<td>{$row4[row4].price}</td>
<td>{$row2[row2].product_amount}</td>
</tr>
</tbody>
</table></br>
<p><strong>Totaal: </strong></br>
<strong>BTW (21%): </strong></p>
</br>
<p><strong>Totaal Inclusief BTW: </strong></p>
{/section}
<div style="clear: both"></div>
</div> <!-- End .module-table-body -->
</div>
</div>
订单产品表:
id order_id product_id product_amount
产品表:
id category_id name description slug price in_stock
谢谢你们的回答!卡米的代码对我有用。
我现在如何拥有它:
$queryx = mysql_query("SELECT * FROM products inner join orders_products on products.id = orders_products.product_id WHERE order_id = '".mysql_real_escape_string($_GET['order'])."'");
while ($linex = mysql_fetch_assoc($queryx))
{
$rowx[] = $linex;
$smarty->assign('rowx', $rowx);
}
你觉得这安全吗?我最终会开始使用 mysqli 或 PDO,但我觉得它太难了,因为我还是个初学者..
你知道任何关于保护 php -> mysql 的好指南吗?
到目前为止感谢!