PHP 循环不包含任何错误,但它也不起作用。这是我的代码:



我的while循环不工作,我也有一个while循环在同一个PHP页面,但这一个不工作,我不明白为什么。下面是我的代码:


$posts_query = "SELECT * FROM posts ORDER BY id";
$posts_result = mysqli_query($connection, $posts_query);
<ul class="accordion__wrapper">
<?php while ($post_side = mysqli_fetch_assoc($posts_result)) : ?>
<?php
$category_id = $post_side['category_id'];
$category_query = "SELECT category_name FROM categories WHERE id=$category_id";
$category_result = mysqli_query($connection, $category_query);
$category = mysqli_fetch_assoc($category_result);
?>
<li class="accordion__menu accordion__products-bg">
<button class="accordion__effect accordion__products-btn">
<?= $category['category_name'] ?>
</button>
<div class="accordion__panel accordion__products-list">
<p>
<a href="#articleOne" data-localscroll="true">Artikel 1</a>
</p>
<p>
<a href="#articleTwo" data-localscroll="true">Artikel 2</a>
</p>
<p>
<a href="#articleThree" data-localscroll="true">Artikel 3</a>
</p>
</div>
</li>
<?php endwhile ?>
</ul>

没有显示任何错误,

  • 也没有显示…
  • 已经解决了,问题发生了,因为我试图只有一个调用相同的变量。但我认为应该有另一种方法可以简化它

    $categories = "SELECT * FROM categories ORDER BY id";$ category = mysqli_query($connection, $ categorories_query);

    $side_categories = "SELECT * FROM categories ORDER BY id";$ side_categorories_result = mysqli_query($connection, $ side_categorories_query);

    <?php
    $no = 1;
    while ($category = mysqli_fetch_assoc($categories_result)) : ?>
    <button class="product__top-btn products-btn-<?= $no; ?>">
    <?= $category['category_name'] ?>
    </button>
    <?php $no++;
    endwhile ?>
    <?php $no = 1;
    while ($side_category = mysqli_fetch_assoc($side_categories_result)) 
    : ?>
    <div class="accordion__menu accordion__products-bg">
    <button class="accordion__effect accordion__products-btn">
    <?= $side_category['category_name'] ?>
    </button>
    </div>
    <?php $no++;
    endwhile ?>
    

    最新更新