Not sure if I get you right...
Do you want all fields from the first 3 rows?
Or the first 3 fields from all rows?
Either way it should be enough to execute the query only once and then fetch each record in a while loop.
If 1, you query should be fine (an additional ORDER BY might not hurt). In case you don't know how many fields there are, you could use mysql_fetch_row() and loop to the array like this:
$result=mysql_query("SELECT * FROM $table WHERE $info != "" LIMIT 0,3";
while ($row=mysql_fetch_row($result)){
for ($i=0; $i<count($row); $i++){
echo $row[$i]." "; // just an example, do whatever you want here
}
echo "<BR>";
}
If 2, you would ommit the LIMIT clause as this limits rows, not columns, and (preferably) specify the names of the first 3 field, or retrieve all fields with * but ignore the rest of them.
If it is something else, could you explain in more detail?