好的,所以我试图查询数据库并选择所有具有特定值的行。之后,我使用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”的文本类型的列,它只会返回一个字母。
如何逐行遍历返回的查询,并允许从当前行获取特定列的数据?
$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"]); }