簡體   English   中英

PHP插入 <div> foreach循環中每第10個DB元素之后的行和行移位

[英]PHP insert <div> and line shift after every 10th DB element in foreach loop

總體而言,我想將數據庫表“產品”的所有元素作為一行上的按鈕來回顯,並且對於每個第十個元素,都應實現換行。 每行都應包含一個特定的()。

我已經打印了一直在執行此操作的代碼:

products_backend.php:

$stmt = $db->prepare("SELECT * FROM products");
$stmt->execute();

$count = $stmt->rowCount();

if($count > 1){

    $table_row = $stmt->fetchAll();
    $i = 0;

    foreach($table_row as $data) {
        $i++;

    ?>
                    <div class="col-md-1 cash_register pants">
                    <button class="table_add" value="Bukser">
                        <h4><?php echo $data['product_name']; ?></h4>
                    </button>
                    </div>
                    <?php 

                    if ($i%10 == 0):
            echo "<br>";
        endif;  
        }
    }

然后,我有“ products.php頁面”,其中顯示了提取的數據:

<div class="container-fluid">
<section class="wrapper">
<div class="row">
<div class="row-eq-height">
    <?php require("products_backend.php"); ?>
</div>
</div>
</section>
</div>

但這是數據庫中所有產品打印在一行上的輸出,每十行沒有任何換行:

在此處輸入圖片說明

該圖顯示了輸出,但是由於窗口大小,只顯示了11種產品,但是我一直在窗口之外瀏覽。

總而言之,我希望輸出為每打印第10個產品插入一個換行符,並且每一行都應在div內,如下面的可操作圖片中所示:(注意,為了創建圖片,我剛剛復制了從行行輸出以創建第二行,因此,我不希望第二行中的輸出與第一行中的輸出相同)

在此處輸入圖片說明

那么我上面的代碼在做什么錯呢?

類“ col-md-1”看起來像一個浮動div

因此,要打破此浮動div,請嘗試以下操作:

echo "<br style=\"clear : both;\">";

您可以使用% moduler在每10條記錄之后添加div

更新的代碼:

$stmt = $db->prepare("SELECT * FROM products");
$stmt->execute();

$count = $stmt->rowCount();

if($count > 1){

    $table_row = $stmt->fetchAll();
    $i = 0;

    foreach($table_row as $data) {

        if(($i%10) == 0){ echo "<div class="clearfix"></div>";}
    ?> 
                    <div class="col-md-1 cash_register pants">
                    <button class="table_add" value="Bukser">
                        <h4><?php echo $data['product_name']; ?></h4>
                    </button>
                    </div>
                    <?php 

          $i++; 
        }

    }

嘗試這個:

$stmt = $db->prepare("SELECT * FROM products");
$stmt->execute();

$count = $stmt->rowCount();

if($count > 1){

    $table_row = $stmt->fetchAll();
    $i = 1;
    echo "<div>";
    foreach($table_row as $data) {
    ?> 
                    <div class="col-md-1 cash_register pants">
                    <button class="table_add" value="Bukser">
                        <h4><?php echo $data['product_name']; ?></h4>
                    </button>
                    </div>
                    <?php 
            if(($i%10) == 0){ echo "</div><div>";}
          $i++; 
        }
       echo "</div>";
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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