簡體   English   中英

如何使用復選框(PHP)從動態表中選擇一行並插入這些行以發送郵件功能

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM