一尘不染

如何通过PHP中的MySQL查询逐行迭代

mysql

好的,所以我试图查询数据库并选择所有具有特定值的行。之后,我使用mysql_fetch_array()将查询转换为数组,然后尝试使用for每个循环逐行遍历读取的数组。

<?php
$query = mysql_query("SELECT * FROM users WHERE pointsAvailable > 0 ORDER BY pointsAvailable Desc");
$queryResultArray = mysql_fetch_array($query);
foreach($queryResultArray as $row)
{
    echo $row['pointsAvailable'];
}
?>

尽管当我对pointsAvailable列之外的任何列执行此操作时,说一列名为“ name”的文本类型的列,它只会返回一个字母。

如何逐行遍历返回的查询,并允许从当前行获取特定列的数据?


阅读 377

收藏
2020-05-17

共1个答案

一尘不染

$result = mysql_query("SELECT id, name FROM mytable");

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
    printf("ID: %s  Name: %s", $row[0], $row[1]);  
}

或使用MYSQL_ASSOC将允许您使用命名列

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    printf("ID: %s  Name: %s", $row["id"], $row["name"]);
}
2020-05-17