将每个应用于多个阵列


Apply foreach to multiple arrays?

我已经玩了几天了,我不是专业的程序员,但我正在尝试建立一个很好的基本系统来管理当地志愿者救援组织的签入/退房。

基本上,我正在尝试让所有成员都成为成员,ISLOGGEDIN值设置为1

$loggedin = mysql_query("SELECT * FROM members WHERE ISLOGGEDIN=1");
$loggedinarray=mysql_fetch_array($loggedin);

并将他们的信息(姓名等)呈现到表格中:

foreach($loggedinarray as $key=>$value) {
    echo "
    <tr>
        <td>".$value[firstname]." ".$value[lastname]."</td>
        <td>".$value[timeloggedin]."</td>
    </tr>
    ";
}
但是,我

得到的结果非常随机,根本不是我想要的!

var_dump($loggedinarray)输出:

array(12) { [0]=> string(5) "5395" ["SES_ID"]=> string(5) "5395" [1]=> string(7) "Anthony" ["FIRST"]=> string(7) "Anthony" [2]=> string(8) "LastName" ["LAST"]=> string(8) "Willison" [3]=> string(1) "1" ["ISLOGGEDIN"]=> string(1) "1" [4]=> string(1) "0" ["TRAINER"]=> string(1) "0" [5]=> string(1) "1" ["OFFICER"]=> string(1) "1" }

任何帮助将不胜感激!

你必须使用 while ; 它是随机的,因为它只从表中获取一行。

$loggedin = mysql_query("SELECT * FROM members WHERE ISLOGGEDIN = 1");
if (mysql_num_rows($loggedin) > 0) {
    echo "<table>";
    while ($row = mysql_fetch_array($loggedin)) {
        echo "
        <tr>
          <td>".$row['FIRST']." ".$row['LAST']."</td>
          <td>".$row['timeloggedin']."</td>
        </tr>
        ";
    }
    echo "</table>";
}

此代码将输出表中的每一行,其中ISLOGGEDIN = 1 .

PS:关于数据$row['timeloggedin'],您的查询中没有它(如var_dump所示),因此它将是一个空字符串。