ma perchè fai tutte queste query quando te ne basterebe una?
Codice PHP:
$query ="SELECT campo1,campo2 ecc.. ... ... ORDER BY nome";
$risultato=mysql_query($query);
$nomeAttuale="";
while($row=mysql_fetch_array($risultato)){
if($nomeAttuale!=$row['nome']){
echo "[b]".$row["nome"]."[/b]
";
$nomeAttuale=$row['nome];
}
echo "$i ".$row["testo"]."
";
$i++;
}
i dati saranno ordinati per nome, e con un if controlli se stai passando al nome successivo lo stampi, altrimente stampi solo il testo.
Se poi vuoi proprio fare 2 query almeno la seconda costruiscila dentro il ciclo e falla mirata sul campo (possibilmente un id) in modo da tirare fuori solo quello che ti serve.
Codice PHP:
$query ="SELECT campo1,campo2 ecc.. ... ... ORDER BY nome";
$risultato=mysql_query($query);
while($row=mysql_fetch_array($risultato)){
$query2=$query ="SELECT campo1,campo2 ecc.. ... ... WHERE idAutore='".$row['IdAutore']."'";
$risultato2=mysql_query($query2);
while($row2=mysql_fetch_array($risultato2)){
echo "$i ".$row2["testo"]."
";
$i++;
}
}
Ovviamente la prima soluzione (una sola query) è decisamente la migliore