嗨,至少可以说,我是一名PHP开发新手,我很困。
我正在努力让下面的代码工作,我知道我需要一个foreach循环或类似的东西,但我已经超出了我的深度,我真的不确定如何让它工作,我对你们大多数人来说都知道这是基本的东西,但是我迷失了方向。
基本上,这是结算账单时的收据。它在MySql数据库中搜索相关项目,并将其打印在收据上。
我知道MySql查询没有链接到底部的输出,但我不知道该怎么做
<html lang="en">
<head>
<title>Receipt</title>
</head>
<body>
<?php
$invoicenum = $_POST['invoicenum'];
$name = $_POST['name'];
$netrev=$invoicenum - 1;
?>
Items:
<?
$itemQuery = mysql_query("SELECT * FROM sales WHERE invoicenum = '$netrev' AND tabname = '$name'");
$result = array();
while($row = mysql_fetch_array($itemQuery))
{
$result[] = $row['itemname'];
}
echo json_encode($result);
$amounts = json_decode($result['amounts']);
$items = json_decode($result['items']);
$prices = json_decode($result['prices']);
?>
<br>
<?
for ($i = 0; $i < count($items); $i++)
{
echo $amounts[$i] . "x " . $items[$i] . " - " . $prices[$i] . "<br>";
}
?>
</body>
</html>
我已经删除了与此数组无关的代码,如果您能提供帮助,我将永远感激。
无需编码和解码。
$itemQuery = mysql_query("SELECT * FROM sales WHERE invoicenum = '$netrev' AND tabname = '$name'");
while($row = mysql_fetch_array($itemQuery))
{
echo $row['amounts'] . "x " . $row['items'] . " - " . $row['prices'] . "<br>";
}
?>
在填充$result
后忘记所有json_decode/encode,然后:
第一步:
$result[] = $row;
然后:
foreach ($result as $set){
echo $set['amount'] . "x " . $set['itemname'] . " - " . $set['price'] . "<br>";
#do var_dump($set); here for checking the keys
}