Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    19

    Ordinamento array Multidimensione

    Salve,
    ho trovato altri post con lo stesso argomento ma nessuno che chiarisce il mio problema.
    Ho un arrai del tipo:
    codice:
    $riga=0;
    while ($ris = mysql_fetch_array($query)) {
      mio_array[$riga]['primo'] = $ris[0];
      mio_array[$riga]['secondo'] = $ris[1];
      mio_array[$riga]['terzo'] = $ris[3];
      mio_array[$riga]['quarto'] = $ris[4];
      $riga++;
    }
    Voglio ordinare l'array "mio_array" in base agli indici 'primo' e 'secondo'.
    Una specie di ORDER BY primo, secondo
    Ci sto sbattendo la testa da un bel po' ma non ne sono ancora venuto a capo.
    Come posso fare?
    Grazie in anticipo.

  2. #2
    non ho capito, si può avere un esempio di quello che vuoi ottenere magari senza usare il mysql_fetch? cioè: ho l'array fatto così e voglio ottenere l'array cosà

    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    19
    Ok, l'array non è altro che la classifica di un campionato di calcio.
    Inserisco tutti i dati in un array e poi devo ordinare in base al punteggio totale e in caso di più squadre con lo stesso punteggio, ordinare in base ai goal fatti e subiti.
    Esempio:
    squadra - Giocate - Punti - Goal fatti
    Riga1 Milan -------4--------7------- 5
    Riga2 Lazio--------4--------9--------7
    Riga3 Juve---------4--------9-------8
    Riga4 Napoli -------4--------8--------6
    Riga5 Parma -------4--------7--------7
    Questo è l'array che ottengo dal database.
    Dovrebbe venir fuori questo:
    squadra - Giocate - Punti - Goal fatti
    Riga1 Juve --------4-------9--------8
    Riga2 Lazio --------4-------9--------7
    Riga3 Napoli -------4-------8--------6
    Riga4 Parma -------4-------7--------7
    Riga5 Milan --------4-------7--------5

    Scusami l'aspetto grafico.
    Ti ringrazio,
    Antonio

  4. #4
    non ho mai fatto sta cosa (ma a questo punto non riesci a farti ritornare il dato ordinato dal database?) o cmq ho sempre preferito evitare, cmq

    http://www.php.net/manual/en/function.usort.php

    la funzione accetta per ordinare un array e una funzione di callback. a tale funzione vengono passati due elementi dell'array, e tu devi fare in modo che la funzione 0, 1, -1. il primo esempio nella guida chiarisce quando devi far tornare uno di questi valori.

    detto ciò, se non erro avrai una funzione:

    Codice PHP:

    function compare($rigaA,$rigaB){ ... } 
    che saranno due elementi rappresentanti due righe del tuo array, quindi immagino due squadre, quindi potrati accedere a $rigaA['secondo'] e compararlo con $rigaB['secondo'] o quali sono i campi che vuoi comparare per decidere se A va prima o dopo B o se sono pari.

    Questo se ho capito com'è organizzato l'array
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.