Probabilmente non sto capendo perché non ho letto la query (è lunghissima!).
Mi son fermato alla prima parte (la parte restante immagino siano condizioni), quindi comunque abbiamo che ad ogni "ciclo", abbiamo disponibili:
Codice:
squadra,
id_squadre,
nome_squadra,
logo_squadra,
sum(punti) as punti,
sum(g_fatti) as g_fatti,
sum(g_subiti) as g_subiti,
sum(differenza) as differenza,
sum(disputate) as giocate,
sum(vinte) as vinte,
sum(pareggiate) as pareggiate,
sum(perse) as perse
$_row['squadra'], $_row['id_squadre'],..., $_row['punti'], $_row['g_*'], ...
Se fin qui ho capito bene, ad ogni ciclo abbiamo le informazioni $row[] di
una squadra (ho il dubbio: perché abbiamo il campo "id_squadr
e" e non "id_squadr
a"?). Io farei così:
Codice PHP:
$query = mysqli_query(...);
while ($row = mysqli_fetch_assoc($result_c))
{
$squadre[] = array('squadra' => $_row['squadra'], 'id_squadre' => $_row['id_squadre'], 'punti' => $_row['punti'], 'g_*' => $_row['g_*'], ...);
}
//qui abbiamo disponibile squadre[0, ..., i, ... n] dove ad ogni indice abbiamo tutte le info della squadra i-esima. Da qui poi puoi "ordinare" l'array seconda dei punti etc etc.
/*
//ordini a secondo delle tue necessità da PHP
usort($squadre, function($a, $b) {
$retval = $a['punti'] <=> $b['punti'];
if ($retval == 0) {
$retval = $a['goal'] <=> $b['goal'];
if ($retval == 0) {
$retval = $a['altro_campo'] <=> $b['altro_campo'];
}
}
return $retval;
});
*/
/*qui avrai l'array $squadre ordinato*/
Potrei aver detto castronerie visto che non ho ben inteso il problema. Il succo è che, visto che ho inteso che vuoi ordinarle con condizioni "complicate", forse è meglio spostare il problema su PHP (anche se in realtà solitamente è bene fare come stavi facendo, ovvero delegare tutti i calcoli a mysql).
Anche questo potresti farlo con PHP...
Ciao!