PHP计算4个数据输出时遇到问题

时间:2018-02-09 16:01:20

标签: php mysql sql

我试图让这些计算4行,然后输出一行div我已经尝试了foreach但它没有工作,我认为它因为while元素,但当有人可以帮助我时,将不胜感激。

我试图获取整个PHP代码,然后计数到4

在第一个输出上,当有超过4个元素时,它需要回显下面的代码,当有低于4时,需要隐藏

<div class='row'>

并且在每个第4个输出上,如果有第4个输出则需要关闭div。

$query = $handler->query("SELECT * FROM users WHERE displaygroup IN (4, 5, 10) ORDER BY displaygroup DESC");    //alleen rank 4 - 5
    while($r = $query->fetch(PDO::FETCH_OBJ)){
        echo '<div id="s-eigenaar" style="margin-bottom:5px;">';
        echo '<div class="se-inner" style="background-image: url(', $config_charurl, '?username=', $r->username, '&action=wav&gesture=sml&size=b&direction=3&head_direction=3);"></div>';
        echo '<div id="staff-info">';
        echo $r->username;
        if ($r->displaygroup == 5) {
            echo '<p>Administrator</p>';
        }
        if ($r->displaygroup == 4) {
            echo '<p>Eigenaar</p>';
        }
        if ($r->displaygroup == 10) {
            echo '<p>RadioBeheer</p>';
        }
        echo '</div></div>';
    }

1 个答案:

答案 0 :(得分:2)

你想要实现这个目标吗?

    $query = $handler->query("SELECT * FROM users WHERE displaygroup IN (4, 5, 10) ORDER BY displaygroup DESC");    //alleen rank 4 - 5
    $count = 0;
    while($r = $query->fetch(PDO::FETCH_OBJ)){
        echo '<div id="s-eigenaar" style="margin-bottom:5px;">';
        echo '<div class="se-inner" style="background-image: url(', $config_charurl, '?username=', $r->username, '&action=wav&gesture=sml&size=b&direction=3&head_direction=3);"></div>';
        echo '<div id="staff-info">';
        echo $r->username;
        if ($r->displaygroup == 5) {
            echo '<p>Administrator</p>';
        }
        if ($r->displaygroup == 4) {
            echo '<p>Eigenaar</p>';
        }
        if ($r->displaygroup == 10) {
            echo '<p>RadioBeheer</p>';
        }
        echo '</div></div>';
        $count++;
        if ($count % 4 != 0) {
            echo '</div>';
        }
    }