Si 'id' no es numérico y no corresponde a un índice autoasignado, y se trata de una cadena de texto, entonces quizás tengas un problema de flags:
Código PHP:
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
echo "ID:". $row[0];
}
Código PHP:
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo "ID:". $row["id"];
}
Fijate que para el segundo ejemplo se espera un array asociativo. Que es tu caso.
También podes contar con las dos opciones usando este flag: MYSQL_BOTH. Es el caso por default, pero quizás lo estés sobreescribiendo. Fijate.
http://php.net/manual/es/function.mysql-fetch-array.php