Question: So I had some `mysql` code that I've begun to rewrite into `mysqli` and have run into a problem with the query, and that is when I execute it, I only receive one set of results instead of the several that I know it should be. This is the new code I am using and was wondering whether anyone had any ideas on where I'm going wrong?

**code:**

```
<?php

if ($result = $link->query("SELECT SUM(step_count.steps) as total, leagues.league_id, leagues.league_name
        FROM step_count INNER JOIN logins on step_count.unique_id = logins.unique_id INNER JOIN leagues ON leagues.unique_id = logins.unique_id GROUP BY leagues.league_id, leagues.league_name ORDER BY `total`
        DESC LIMIT 100 ", MYSQLI_USE_RESULT))
        $rank = 1; {

            $row = $result->fetch_assoc();
            $result->close();

        }

?>

<tr>
    <td>
        <?php echo $rank++; ?>
    </td>
    <td>
        <?php echo $row['league_name']; ?>
    </td>
    <td>
        <?php echo $row['total']; ?>
    </td>
</tr>

</table>

<?php

mysqli_close($link);

?>

```

Answer: 
you have to use a while loop

```
while($row = $result->fetch_assoc()){ ?>
   <tr>
    <td><?php echo $rank++; ?></td>
    <td><?php echo $row['league_name']; ?></td>
    <td><?php echo $row['total']; ?></td>
   </tr>
  <?php } ?>

```
[Fetch assoc](http://php.net/manual/en/mysqli-result.fetch-assoc.php) retrieves one row as an associative array.

So you must use a while loop to keep fetching the rows until there are no more. The [first example](http://php.net/manual/en/mysqli-result.fetch-assoc.php#refsect1-mysqli-result.fetch-assoc-examples) clearly illustrates how. I modified your whole code so you can copy paste everything. Do read the example though.

```
<?php  
$query = "SELECT SUM(step_count.steps) as total, 
leagues.league_id, leagues.league_name
FROM step_count
INNER JOIN logins on
step_count.unique_id=logins.unique_id
INNER JOIN leagues ON
leagues.unique_id=logins.unique_id
GROUP BY leagues.league_id, leagues.league_name
ORDER BY `total` DESC LIMIT 100";

$rank = 1;
if ($result = $link->query($query, MYSQLI_USE_RESULT)) {

    while($row =$result->fetch_assoc()){
    ?>

        <tr>
           <td><?php echo $rank++; ?></td>
           <td><?php echo $row['league_name']; ?></td>
           <td><?php echo $row['total']; ?></td>
       </tr>     
       <?php
   }?>
   </table>
   <?php
}
mysqli_close($link);

```