用于显示结果的简化php代码

用于显示结果的简化php代码,php,mysqli,Php,Mysqli,很抱歉,如果以前有人问过这个问题,但是我找不到我想要的东西,而且我对PHP不在行 现在我有了这段代码,它应该返回不同级别的结果: <div class="swiper-slide"> <img src="img/B1.jpg" alt="" /> <div class="content_container"> <?php $result = mysqli_query(

很抱歉,如果以前有人问过这个问题,但是我找不到我想要的东西,而且我对PHP不在行

现在我有了这段代码,它应该返回不同级别的结果:

<div class="swiper-slide">
        <img src="img/B1.jpg" alt="" />
        <div class="content_container">
            <?php
                $result = mysqli_query($con,"SELECT * FROM floor_directory WHERE level='B1'");
                while($row = mysqli_fetch_array($result))
                {
            ?>
            <h1><?php echo $row['categories']; ?></h1>
            <ul class="shop_listing clearfix">
                <li class="float_left"><?php echo $row['name']; ?></li>
                <li class="float_right"><?php echo $row['unit_number']; ?></li>
            </ul>
            <?php
                }
            ?>
        </div>
      </div>
      <div class="swiper-slide">
        <img src="img/L1.jpg" alt="" />
        <div class="content_container">
            <?php
                $result = mysqli_query($con,"SELECT * FROM floor_directory WHERE level='L1'");
                while($row = mysqli_fetch_array($result))
                {
            ?>
            <h1><?php echo $row['categories']; ?></h1>
            <ul class="shop_listing clearfix">
                <li class="float_left"><?php echo $row['name']; ?></li>
                <li class="float_right"><?php echo $row['unit_number']; ?></li>
            </ul>
            <?php
                }
            ?>
        </div>
      </div> and so on...

试试这个:

你可以使用
WHERE level='B1'和level='L1'
,如果你想要其中一个,用
替换
,但是,你所说的“如果假设建筑有10层”到底是什么意思?因为我显示的是基于每个楼层地图的店名结果。每个楼层地图都有自己的地图图像,所以如果说,大楼有10层,我是否要为每个楼层地图图像复制相同的代码?据我所知,恐怕这就是你必须要做的。可能还有另一种方法,但这是我目前在这方面的知识范围。另外,关于“如何”显示它可能是另一个因素。不过,您可能可以利用该功能。谢谢Vishal!我想这就是我想要的。因此,根据您提供的代码,我假设如果下次我有新图像,我只需要在这一行中相应地更新:$levelArray=array('L1','B1','L2','B2')@user1462863我可以回答,答案是“是”。只需继续添加它,例如:
$levelArray=array('L1','B1','L2','B2','C1','D1','E1')但是最后一个条目不带逗号。我已经测试过了,效果非常好!谢谢弗雷德和维沙=我现在面临的问题是,对于L1,它将在L1上显示商店的信息。但对于L2及以后的版本,它将显示L1+L2的店铺信息,而不是仅显示L2。这能解决吗?$data='';只需将其添加到foreach循环中;嗨,Vishal,我还有一个问题,但我不知道我能不能把它添加到这里。现在我有两个不同的店名,但和咖啡馆的类别相同。当我显示结果时,结果是咖啡馆、星巴克和咖啡馆、咖啡豆。我想把它展示成咖啡馆,星巴克,咖啡豆。我该怎么做?
Try this:

    <?php
    $levelArray=array('L1','B1','L2','B2');
        foreach ($levelArray as $i=>$level) {
             $data='';
            $img = "img/".$levelArray[$i];
           $result = mysqli_query($con,"SELECT * FROM floor_directory WHERE level='$levelArray[$i]'");
           while($row = mysqli_fetch_array($result)){
            $data .= '<h1>'.$row['categories'].'</h1>
                        <ul class="shop_listing clearfix">
                            <li class="float_left">'.$row['name'].'</li>
                            <li class="float_right">'.$row['unit_number'].'</li>
                        </ul>';
        }
        echo '<div class="swiper-slide">
            <img src="'.$img.'" alt="" />
                <div class="content_container">'.$data.'</div>
          </div>'

        }

     ?>