Tutorial :How to iterate by row through a mysql query in php



Question:

Ok, So I am trying to query my database and select all rows that have a certain value. After that I turn the query into an array with mysql_fetch_array(), then I tried iterating by row through the fetched array using a for each loop.

<?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'];  }  ?>  

Though when I do this for any column besides the pointsAvailable column say a column named "name" of type text it only returns a single letter.

How do I iterate through a returned query row by row, and be allowed to fetch specific columns of data from the current row?


Solution: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]);    }  

or using MYSQL_ASSOC will allow you to use named columns

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


Solution:2

Yes using mysql_fetch_array($result) is the way to go.


Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »