mysql_fetch_array não recupera todas as linhas
$query = "SELECT * FROM table";
$result = mysql_query($query, $db);
$all = mysql_fetch_assoc($result);
echo mysql_num_rows($result) . ":" . count($all);
Isso retorna
2063:7
Eu não usei count antes, então não tenho 100% de certeza de que não está contando as colunas da tabela. É tarde e eu posso estar enlouquecendo.
Aqui está outro exemplo do que está acontecendo:
$result = mysql_query($query, $db);
echo "Rows: " . mysql_num_rows($result) . " <BR />";
$player_array = mysql_fetch_assoc($result);
echo "<pre>";
print_r($player_array);
echo "</pre>";
Quais saídas:
Rows: 9
Array
(
[playerID] => 10000030
)
TL; DR: envio consultas que retornam várias linhas, mas fetch_array só me fornece uma pequena porção dessas linhas na matriz resultante.