Php循环在输出中提供额外的HTML元素

时间:2016-01-12 13:35:00

标签: php html

<?php
$sun=mysql_query("SELECT * FROM `red_users` WHERE `role`='user' AND `userID` != '$userID' ORDER BY `id` DESC LIMIT 10 ") or die(mysql_error());

while($su[]=mysql_fetch_array($sun)){

}

for($i=0;$i<count($su);$i++){

    $sud=$su[$i]['userID'];
    $sname=$su[$i]['name'];
    $dop=$su[$i]['dp'];
    $sxx=$su[$i]['sex'];

    if($dop != ''){
        $sey=$dop;
    }

    if($dop =='' AND $sxx=='MALE'){
        $sey="../images/male.png";
    }

    if($dop =='' AND $sxx=='FEMALE'){
        $sey="../images/female.png";
    }
?>

<a href="profile.php?frnd=<?php echo $sud ?>">
    <div class="inbox-item">
        <div class="inbox-item-img"><img src="<?php echo $sey ?>" class="img-circle" alt=""></div>
        <p class="inbox-item-author"><?php echo $sname; ?></p>
    </div>
</a>
<?php } ?

在输出中显示一个额外的Html元素(没有动态数据) 在由mysql查询填充的Real元素之后,显示一个不包含任何数据的额外元素。

1 个答案:

答案 0 :(得分:2)

而不是

while($su[]=mysql_fetch_array($sun)){

}

并进一步处理$su

处理同一while中的每条记录:

while($su=mysql_fetch_array($sun)){
    // do stuff
}

@mloureiro补充说明:

这是因为while一直运行直到找到false值,所以当mysql_fetch_array没有其他任何内容可以返回时,它会给false将传递给$su[]数组。