[英]How to select a row(s) from dynamic table using checkbox (PHP) and insert those row to send mail function
嗨,我有一個頁面,顯示我的桌子的所有內容。 沿着表的每一行,我還有一列包含一個復選框。 當用戶通過選中復選框並按提交按鈕選擇一個或多個行時,我只希望這些行出現在下一頁的表格中(material.php)。 我知道基本上是選擇的每行一條select語句。 但我不知道該如何處理。 有人可以幫忙嗎? 謝謝
<td><input type='checkbox' name='material[]' value='material[<?php echo $id;?>]' /></td>
這是我的material.php頁面-
<table>
<?php
foreach ($_POST['material'] as $item) {
$query = "SELECT * FROM model_material WHERE id = '$item'";
if (mysqli_query($db_con, $query)) {
$query_result = mysqli_query($db_con, $query);
while ($all_select_material = mysqli_fetch_assoc($query_result)) {
extract($all_select_material);
?>
<tr>
<td><?php echo $id; ?></td>
<td><?php echo $model_id; ?></td>
<td><?php echo $material_id; ?></td>
</tr>
<?php
}
}
}
?>
</table>
請有人幫忙
嘗試以下方法:使用准備好的語句來提高安全性:
<table>
<?php
foreach ($_POST['material'] as $item) { // loop your post array
$query = "SELECT col1,col2,col3,col4 FROM model_material WHERE id =
?"; // prepare a query
$stmt = $db_con->prepare($query);
if ($stmt) {
$stmt->bind_param("i",$item); // bind the integer id ($item)
$stmt->execute(); // fire it
$stmt->bind_result($col1,$col2,$col3,$col4); // bind the selected rows to each variable
$stmt->store_result(); //incase of large results prevents memory error
while ($stmt->fetch()) { // loop your results like $result fetch assoc
echo "<td>".$col1."</td>"; // display data
echo "<td>".$col2."</td>";
echo "<td>".$col3."</td>";
}
$stmt->close(); // close statement
}
}
$db_con->close(); // close database
?>
</table>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.