gpt4 book ai didi

javascript - 如何在 PHP 中以友好的 View 查看内连接中的数据

转载 作者:行者123 更新时间:2023-11-29 21:09:05 24 4
gpt4 key购买 nike

我想为我的生产创建一些简单的系统,他们可以扫描产品上的条形码,并且系统可以查看他们可以用来在该产品上粘贴标签的 JIT。有些产品必须使用2个JIT来粘贴标签,有些JIT可以在许多产品上使用。我在 mysql 中创建了 3 个表,即“product”、“jit”和“product_jit”,具有多对多关系。

Table

我创建了内部联接,以使用产品编号从 MySQL 中提取数据。

$code = $_POST['code'];




$sql = "SELECT product.product_number,product.product_name,product.product_jitqty,product.product_desc,jit.jit_number,jit.jit_name,jit.jit_drawer,jit.jit_port,jit.jit_specpath
FROM product
JOIN production_jit
ON production_jit.product_number = product.product_number
JOIN jit
ON jit.jit_number = production_jit.jit_number
WHERE product.product_number = '$code'";

$result = mysqli_query($conn, $sql);


if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result))

{ ?>
<table>
<tr><td>Product Number</td><td>: <?php echo $row['product_number']; ?></td></tr>
<tr><td>Product Name</td><td>: <?php echo $row['product_name']; ?></td></tr>
<tr><td>Product Description</td><td>: <?php echo $row['product_desc']; ?></td></tr>
<tr><td>Product Jit Quantity</td><td>: <?php echo $row['product_jitqty']; ?></td></tr>
<tr><td>JIT Number</td><td>: <?php echo $row['jit_number']; ?></td></tr>
<tr><td>JIT Name</td><td>: <?php echo $row['jit_name']; ?></td></tr>
<tr><td><font color="red">JIT Drawer</font></td><td><font color="red">: <?php echo $row['jit_drawer']; ?></font></td></tr>
<tr><td><font color="red">JIT Port</font></td><td><font color="red">: <?php echo $row['jit_port']; ?></font></td></tr>
<tr><td>JIT Spec</td><td>: <?php echo $row['jit_specpath']; ?></td></tr>
</table>
<h1><strong>Please scan JIT barcode on JIT</strong></h1>

<table>
<form action="product3.php" method="post" name="check2">
<input type="hidden" name="id" value="<?php echo $row['ID']; ?>">
<input type="hidden" name="productnumber" value="<?php echo $row['productNumber']; ?>">
<input type="hidden" name="jitnumber" value="<?php echo $row['jitNumber2']; ?>">
<tr><td>JIT Barcode</td><td>:</td><td><input type="text" name="jitcode" maxlength="200"/></td></tr>
</table>
<table>
<td></td><td colspan="3" align="right"><input name="hantar" type="submit" value="Check"></td>
</table>

<?php
}

}
else {
?>
<script>
alert("Invalid Barcode");
window.location.href = "product.php";
</script><?php
}

mysqli_close($conn);

如果产品只使用1个JIT,界面看起来不错,但如果产品使用2个JIT,系统会显示循环数据。

View when 1 product with 2 JIT

逻辑情况下, View 是正确的,但是如何自定义,重复的数据系统不会显示。对于此示例,只有 jit 表可以在循环中显示。如下图,一个产品有2个JIT,所以我只是显示一次产品信息,但只显示我想要显示的JIT信息跟随数据..

enter image description here

最佳答案

如果您说只想显示其中一个数据集,只需使用 break 即可仅显示第一个数据集:

    <?php
$phead='';
$pbody='';
while($row = mysqli_fetch_assoc($result))

{
if(empty($phead)){
$phead.='<table>';
$phead.='<tr><td>Product Number</td><td>: '.$row['product_number'].'</td></tr>';
$phead.='<tr><td>Product Name</td><td>: '.$row['product_name'].'</td></tr>';
$phead.='<tr><td>Product Description</td><td>: '.$row['product_desc'].'</td></tr>';
$phead.='<tr><td>Product Jit Quantity</td><td>: '.$row['product_jitqty'].'</td></tr>';
}
$pbody.='<tr><td>JIT Number</td><td>: '.$row['jit_number'].'</td></tr>';
$pbody.='<tr><td>JIT Name</td><td>: '.$row['jit_name'].'</td></tr>';
$pbody.='<tr><td><font color="red">JIT Drawer</font></td><td><font color="red">: '.$row['jit_drawer'].'</font></td></tr>';
$pbody.='<tr><td><font color="red">JIT Port</font></td><td><font color="red">: '.$row['jit_port'].'</font></td></tr>';
$pbody.='<tr><td>JIT Spec</td><td>: '.$row['jit_specpath'].'</td></tr>';

}
//Now, we only have 1 instance of $phead and can have multiple $pbody;
if(!empty($phead)){
echo $phead;
echo $pbody;
echo '</table>';
}

?>

我已更新我的答案以符合您的条件。 1组产品头信息和多个JIT信息。

关于javascript - 如何在 PHP 中以友好的 View 查看内连接中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36562076/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com