LennartMart / Intraclub

PHP-programma voor organisatie intraclub van BC Landegem
www.bclandegem.be
1 stars 0 forks source link

Bereken seizoen, magic sorting #14

Closed LennartMart closed 11 years ago

LennartMart commented 11 years ago
            //Deze foreach sorteert de spelers per speeldag
            foreach ($speeldagen_seizoen as $speeldag) {
                /* @var $speeldag Speeldag */
                // Obtain a list of columns
                foreach ($ranking_spelers_alle_speeldagen[$speeldag->id] as $key => $row) {
                    $speler_id[$key] = $row['speler_id'];
                    $gemiddelde[$key] = $row['gemiddelde'];
                }

                // Add $data as the last parameter, to sort by the common key
                array_multisort($gemiddelde, SORT_DESC, $data);

                foreach ($ranking_spelers_alle_speeldagen[$speeldag->id] as $key => $row) {
                    //Update the speeldagstats
                    $speler = new Speler();
                    $speler->update_speeldagstats($row['speler_id'], $speeldag->id, $row['gemiddelde'], $key);
                }

            }

De $data, slaat nergens op => $ranking_spelers_alle_speeldagen[$speeldag->id]

Deze bevat multiple arrays. Elke array is (speler_id, gemiddelde). Bedoeling is dus om dit te implementeren: http://stackoverflow.com/questions/1597736/how-to-sort-an-array-of-associative-arrays-by-value-of-a-given-key-in-php

LennartMart commented 11 years ago
            //Deze foreach sorteert de spelers per speeldag
            foreach ($speeldagen_seizoen as $speeldag) {
                /* @var $speeldag Speeldag */
                // Obtain a list of columns
                foreach ($ranking_spelers_alle_speeldagen[$speeldag->id] as $key => $row) {
                    $gemiddelde[$key] = $row['gemiddelde'];
                }

                //Sorteert array op gemiddelde desc!
                array_multisort($gemiddelde, SORT_DESC, $ranking_spelers_alle_speeldagen[$speeldag->id]);

                foreach ($ranking_spelers_alle_speeldagen[$speeldag->id] as $key => $row) {
                    //Update the speeldagstats
                    $speler = new Speler();

                    //$key +1 = begint bij 0!
                    $speler->update_speeldagstats($row['speler_id'], $speeldag->id, $row['gemiddelde'], $key +1);
                }

            }