Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从青铜开始循环通过关卡_Php_Loops - Fatal编程技术网

Php 从青铜开始循环通过关卡

Php 从青铜开始循环通过关卡,php,loops,Php,Loops,我有一张有20种不同方案的桌子 plans.sql id | planName 1 | Alpha 2 | Omega 3 | Gamma ... 每个计划包含3个不同级别的铜、银、金。我想在如下页面上显示所有计划: Alpha Alpha Alpha Bronze Silver Gold Omega Omega Omega Bronze Silver Gold ... 到目前为止,我使用while循环从数据库中提取计划名称,如下所示: $plansql = "selec

我有一张有20种不同方案的桌子

plans.sql

id | planName
1  | Alpha
2  | Omega
3  | Gamma
...
每个计划包含3个不同级别的铜、银、金。我想在如下页面上显示所有计划:

Alpha   Alpha  Alpha
Bronze  Silver Gold

Omega  Omega  Omega
Bronze Silver Gold
...
到目前为止,我使用while循环从数据库中提取计划名称,如下所示:

$plansql = "select * from plans";
$resultps = $conn->query($plansql);

$resultp = array();
if (mysqli_num_rows($resultps) > 0) {
while($plan = mysqli_fetch_assoc($resultps)) {
$resultp[] = '<div class="col-lg-2">
<div class="panel price panel-red">
    <div class="panel-heading text-center">
                    <h3>'.$plan['planName'].'</h3>
                                            <h3>'.$planLevel.'</h3>
                    </div>
                    <div class="panel-body text-center">
                        <p class="lead panel-body-pricing" style=""><strong>'.$plan['planPrice'].'</strong></p>
                    </div>
                    <ul class="list-group list-group-flush text-center">
                        <li class="list-group-item"><i class="icon-ok text-danger"></i> 
                                                    This plan is perfect for...
                                                    </li>
                                                    </ul>
                    <div class="panel-footer">
                    <a class="btn btn-lg btn-block btn-danger" href="#">SEE DETAILS</a>
                    </div>
                                            </div>
                                            </div>';
}
}

它工作得很好,但是如何将不同的级别添加到每个计划中?

如果您想将其显示为html表,可以使用此选项

echo '<table>';
foreach ($resultp as $planName) {
    echo "<tr>
          <td>$planName<br>Bronze</td>
          <td>$planName<br>Silver</td>
          <td>$planName<br>Gold</td>
          </tr>";
}
echo '</table>';

只是另一个查询和循环中的循环是你想要避免的事情?@Alex:我只需要显示循环外的输出。剩下的就没事了。我正在考虑使用foreach循环,但我不知道如何实现。您希望将数据显示为html吗?作为文本?@MichaelBeeson:作为html。很好!有点令人惊讶,但是是的,即使这样也应该有效-@迈克尔贝森:我不能在表格中输出这个。实际上,我在while循环中将它们显示为带有css的小卡片。那么你建议这是在循环中吗?是的,我会这么做。而不是$resultp[]=$plan['planName'];我会把输出的东西放在那里。但如果不知道原因,就很难提供帮助parameters@MichaelBeeson当前位置我编辑了我的问题。这更有意义吗?我正在while循环中构建卡,但是我需要在页面的其他地方显示它。这就是我使用join的原因。如果我没有得到它,请再次原谅,但是您可以将html输出存储为字符串,然后在以后回显该字符串。因此,在我的回答中,您将使用$result.=,替换echo,然后在需要显示数据时,写入echo$result
echo '<table>';
foreach ($resultp as $planName) {
    echo "<tr>
          <td>$planName<br>Bronze</td>
          <td>$planName<br>Silver</td>
          <td>$planName<br>Gold</td>
          </tr>";
}
echo '</table>';