首页  >  问答  >  正文

想要显示每行的复选框

目前,在我们的办公室网站中,有一个用户输入文本框,插入后,数据库的结果将显示在下面。 Lot ID、Product、EWSFLOW 和 Zone 有 4 个结果。其中,只有 zone 不同。我想要做到 Lot ID、产品和 EWSFlow 必须立即显示,如果输入的值有 5 个不同的区域,则区域必须显示 Zone:1,2,3,4,5<< 第一个问题已经解决。 现在,我尝试为每个区域添加复选框,并且复选框必须显示在每个区域旁边。但目前,复选框显示在顶部。此外,复选框的数量必须与区域的数量相同。假设插入的值有 5 个区域,则除此之外还必须显示 5 个复选框(示例:区域:[复选框] 1)。 复选框显示在顶部

echo "<table id='corwafer'>";
$arr = array();

while ($row = mysqli_fetch_assoc($result1)) {

$field1name = $row["lotid"];
$field2name = $row["product"];
$field3name = $row["ewsflow"];
$field4name = $row["zone"];
$key = $field1name + ":" + $field2name + ":" + $field3name;

if (!in_array($key, $arr)){
    echo "<tr>";
    echo "<th >Lot ID:</th>";
    echo "<td >$field1name</td>";
    echo "</tr>";

    echo "<tr>";
    echo "<th>Product:</th>";
    echo "<td>$field2name</td>"; 
    echo "</tr>";

    echo "<tr>";
    echo "<th>EWSFLOW: </th>";
    echo "<td>$field3name</td>"; 
    echo "</tr>";

    array_push($arr, $key);
}

echo "<tr>";
echo "<th>Zone:</th>";
echo "<input type='checkbox' name='chkzone' value='chkzone'>";
echo "<td>$field4name</td>"; 
echo "</tr>";

}

echo "</table>";

P粉574695215P粉574695215188 天前284

全部回复(2)我来回复

  • P粉450079266

    P粉4500792662024-04-02 09:04:12

    您可以更改查询并使用 MySQL 的 GROUP BY 功能。下面是查询。忽略任何拼写错误。

    $sql = "SELECT lotid, product, ewsflow, GROUP_CONCAT(zone) FROM productdb.tbl_correlationwafer WHERE lotid = ? GROUP BY lotid, product, ewsflow ORDER BY lotid";
    
    $pq = $mysqli->prepare($sql);
    $pq->bind_param('i', $productlotid);
    $pq->execute();
    $result = $pq->get_result();
    
    $data = $result->fetch_all();

    GROUP_CONCAT() 函数返回一个字符串,其中包含来自组的串联非 NULL 值。

    GROUP BY 语句将具有相同值的行分组到汇总行中,例如“查找每个国家/地区的客户数量”。

    回复
    0
  • P粉693126115

    P粉6931261152024-04-02 00:46:20

    您可以定义一个数组,并将 lotidproductewsflow 放入其中并在循环内合并。然后在回显之前检查它之前是否已经使用过:

    $arr = array();
    
    while ($row = mysqli_fetch_assoc($result1)) {
    
    $field1name = $row["lotid"];
    $field2name = $row["product"];
    $field3name = $row["ewsflow"];
    $field4name = $row["zone"];
    $key = $field1name + ":" + $field2name + ":" + $field3name;
    
    if (!in_array($key, $arr)){
        echo "";
        echo "Lot ID:";
        echo "$field1name";
        echo "";
    
        echo "";
        echo "Product:";
        echo "$field2name"; 
        echo "";
    
        echo "";
        echo "EWSFLOW: ";
        echo "$field3name"; 
        echo "";
    
        array_push($arr, $key);
    }
    
    echo "";
    echo "Zone:";
    echo "$field4name"; 
    echo "";
    
    }

    回复
    0
  • 取消回复