0

配列から値をエコーするのに問題があります。mysql クエリを使用して、$online現在オンラインのユーザーの名前を含む配列 を作成しています。これが私のコードです:

<?php
    $goodbye = time() - 300;
    $qry="SELECT UserName FROM Members WHERE Seen >=$goodbye";
    $result=mysql_query($qry);

    if($result) {
        $online = mysql_fetch_assoc($result);
        foreach($online as $u) {
            echo $u;
            echo "<br>";
        }
    } else {
        die("Query Failed");
    }
?>

これを私の Web ページで表示すると、配列の最初のインデックスのみが表示されます (例: User1、User17、および User69 がすべてオンラインの場合、User1 のみがリストに表示されます)。echo を間違って使用しているため、これが発生していると確信していますが、まだ理解できていません。任意のヒント?ありがとう。

4

1 に答える 1

1

( mysql_fetch_assoc)のようにループする必要があります

if($result) {
    while ($row = mysql_fetch_assoc($result)) {
        echo $row["UserName"];
    }
}

また、注意してWarningください。

于 2013-10-06T20:02:53.353 に答える