搜尋

首頁  >  問答  >  主體

isset函數僅適用於資料庫中的第一個複選框

<p> 我有一個元件,它從 MySQL 資料庫中取得所有資料。</p>
;
            
;
; image1;
{$productName}
;
<p class='card-text'>此處顯示資訊 lorem ipsum</p> {$productPrice}; {$productID};
; ;
<輸入型別='隱藏'名稱='product_id'值='{$productID}'>
</表格>
”; 回顯$元素; }</pre> <p>我還有一個用於表單的提交按鈕。 <code><button type="submit" name="submit" form="myform">顯示所選內容</button></code></p> <p>取得容器的程式碼:</p>
<div class="row text-center py-5"> getData(); while ($row = mysqli_fetch_assoc($result)) { 元件($row['product_name'], $row['product_price'], $row['product_image'], $row['id']); } ?> </div></pre> <p>當點擊提交按鈕時,用於檢查容器是否被選中並返回其值(productID)的PHP代碼。</p>
if (isset($_POST['提交'])) {
    if (!empty($_POST['checkid'])) {
        foreach ($_POST['checkid'] as $value) {
            回顯“值:” 。 $價值。 '<br/>';
        }
    }
}</pre>
<p>我的資料庫中有幾個產品,但它只適用於第一個。其他的作用。</p>
P粉787820396P粉787820396514 天前556

全部回覆(1)我來回復

  • P粉511985082

    P粉5119850822023-09-06 00:24:09

    您每次循環都會建立一個新的form元素。 您可以將您的函數變更為

    function component($productName, $productPrice, $productImg, $productID)
    {
        $element = "    
                    <div class='card shadow'>
                        <img src='{$productImg}' alt='image1' class='img-fluid card-img-top'>
                        <div class=\"card-body\">
                            <h5 class='card-title'>{$productName}</h5>
                        </div>
                        <p class='card-text'>info goes here lorem ipsum</p>
                        <span class='price'>{$productPrice}</span>
                        <span class='price'>{$productID}</span>
                        <div class='form-check form-switch'>
                            <input class='form-check-input' type='checkbox' name='checkid[]' value='{$productID}'>
                        </div>  
                        <input type='hidden' name='product_id' value='{$productID}'>
    
                    </div>
        ";
        echo $element;
    }

    以及在一個單獨的表單中取得您的元件(上面的函數)和提交按鈕的程式碼,如下:

    <div class="container">
        <div class="row text-center py-5">
    <div class='col-md-3 col-sm-6 my-3 my-md-0'>
                <form action='index.php' method='post' id='myform'>
            <?php
            $result = $database->getData();
            while ($row = mysqli_fetch_assoc($result)) {
                component($row['product_name'], $row['product_price'], $row['product_image'], $row['id']);
            }
            ?>
    <button type="submit" name="submit" form="myform">show selected</button>
                </form>
            </div>
        </div>

    回覆
    0
  • 取消回覆