从引导程序选项卡内的数据库检索数据


Retrieve data from database inside bootstrap tab

我正试图在两个选项卡(A和B部分)中获得相同的广告id(ad_id)。当我选择A部分时,它工作正常,但当我选择B部分时,我无法获得数据。

代码如下:

<div><?php $connect=mysql_connect("localhost","root","");
            $db=mysql_select_db("bil",$connect) ;
            $query=mysql_query("select ad_id from ad limit 5"); ?>
    <ul class="nav nav-tabs" id="myTab">
        <li ><a href="#sectionA">Section A</a></li>
        <li class="active"><a href="#sectionB">Section B</a></li>
    </ul>
    <div class="tab-content">
        <div id="sectionA" class="tab-pane fade in active">
            <h3>Section A<?php while($r=mysql_fetch_assoc($query)){ echo $r['ad_id'].'-';} ?></h3>
        </div>
        <div id="sectionB" class="tab-pane fade active">
            <h3>Section B<?php while($r1=mysql_fetch_assoc($query)){ echo $r1['ad_id'].'-';} ?></h3>
        </div>
    </div>
</div> 

mysql_fetch_assoc()返回下一行,并将内部指针移动到下一行。当所有行都已返回时,它将返回null。所以在你的第二个while循环中,你试图在null上循环。YOu还应该切换到mysqli,而不是不推荐使用的mysql

像这样重写你的代码:

<?php 
$r=mysqli_fetch_all($query, MYSQLI_ASSOC);
$r1=mysqli_fetch_all($query, MYSQLI_ASSOC);
?>
<div id="sectionA" class="tab-pane fade in active">
 <h3>Section A<?php while($r){ echo $r['ad_id'].'-';} ?></h3>
</div>
<div id="sectionB" class="tab-pane fade active">
 <h3>Section B<?php while($r1){ echo $r1['ad_id'].'-';} ?></h3>
</div>