Vous souhaitez afficher la case à cocher pour chaque ligne
P粉574695215
P粉574695215 2024-04-01 12:34:11
0
2
368

Actuellement, sur le site Web de notre bureau, il y a une zone de texte de saisie utilisateur, après insertion, les résultats de la base de données seront affichés ci-dessous. Lot ID、Product、EWSFLOW 和 Zone 有 4 个结果。其中,只有 zone 不同。我想要做到 Lot ID、产品和 EWSFlow 必须立即显示,如果输入的值有 5 个不同的区域,则区域必须显示 Zone:1,2,3,4,5. << Le premier problème a été résolu. Maintenant, j'essaie d'ajouter une case à cocher pour chaque zone et la case à cocher doit apparaître à côté de chaque zone. Mais actuellement, la case à cocher s'affiche en haut. De plus, le nombre de cases à cocher doit être le même que le nombre de régions. En supposant que la valeur insérée comporte 5 champs, en plus de cela, 5 cases à cocher doivent être affichées (exemple : champ : [case à cocher] 1). Case à cocher affichée en haut

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粉574695215
P粉574695215

répondre à tous(2)
P粉450079266

Vous pouvez modifier la requête et utiliser les fonctionnalités GROUP BY de MySQL. Ci-dessous la requête. Ignorez les fautes d’orthographe.

$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();
La fonction

GROUP_CONCAT() renvoie une chaîne contenant les valeurs non NULL concaténées du groupe.

L'instruction

GROUP BY regroupe les lignes ayant la même valeur en lignes récapitulatives, telles que "Trouver le nombre de clients par pays".

P粉693126115

Vous pouvez définir un tableau, y insérer lotidproductewsflow et fusionner à l'intérieur de la boucle. Vérifiez ensuite s'il a déjà été utilisé avant de faire écho :

$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 "";

}
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal