-1

質問は本当に簡単だと思いますが、何が間違っているのかわかりません。ネストされた while ループと 2 つの行があります。結果は次のようになります。

ManU - Arsenal
Chelsea - Liverpool
ManCity - Everton
Tottenham - Fulham

しかし、私が得たのはこれです:

LiverpoolEvertonFulham
ManU - Arsenal
Chelsea - 
ManCity -
Tottenham -

これはコードです:

$row1 = array('ManU','Chelsea','ManCity', 'Tottenham');
$row2 = array('Arsenal','Liverpool','Everton', 'Fulham');

    $i = 0;
    $j = 0;

    echo "<table>";
    while($i < count($row1)){
        $a = $row1[$i];
        echo "<tr><td>".$a." - ";
        $i++;

        while($j < count($row2)){
            $b = $row2[$j];
            echo $b."</td></tr>";   
            $j++;
        }
    }
    echo "</table>";

実際にはSQLを使用しているため、ネストされたwhileループである必要があります。これは問題の単純化されたバージョン(dbテーブルの行ではなく行)であり、他のバージョンでも問題は同じです。 SQLの問題ではないと思います。助けてください!

4

2 に答える 2

1

2ループはいらない

while($i < count($row1)){
        echo "<tr><td>".$row1[$i]." - ".$row2[$i]."</td></tr>";
        $i++;
}
于 2012-11-26T02:05:12.570 に答える
0

しばらくしてから挿入reset($row2)します。ループを最初にリセットして、もう一度ループする必要があります。mysqli fetch_assoc()使用中data_seek(0)

于 2012-11-27T05:48:12.807 に答える