zempsit
Erfahrenes Mitglied
Hallo
Ich habe in einer MySQL-Datenbank diverse Ranglisten von mehreren Sportdisziplinen mit den Rekordwerten einer Schule.
Nun habe ich vor, eine TopTen-Rangliste zu machen, so eine Art Medaillenspiegel, wo es darum geht, wer die meisten TopTen-Klassierungen hat.
Ich habe also nun für jeden Schüler, der in den Topten mindestens einer Disziplin vorkommt, ein Array aus der DB gelesen. Der Aufbau dieses Arrays ist folgendermassen:
$schuler_x = array( "1. Ränge" => Anzahl, "2. Ränge" => Anzahl, "3. Ränge" => Anzahl, etc.)
Nun habe ich all diese Arrays von den einzelnen Schüler in ein weiteres Array verpackt. Dieses Array will ich nun so sortieren, damit die Reihenfolge stimmt. Es soll zuerst nach dem 1. Rang, dann nach dem 2. Rang, dann nach dem 3. Rang usw. sortiert werden.
Meines Wissens ist es ja möglich mit usort() ein solches mehrdimensionales Array zu sortieren. Aber die Funktion würde wohl ziemlich kompliziert.
Eine Variante wäre es auch, alles in eine MySQL-Tabelle zu speichern und dann von dort sortiert auszulesen.
Aber vielleicht weiss ja jemand von euch eine relativ einfache Variante, wie ich die Rangierung am Besten hinkriege ohne das über MySQL zu machen.
Ich hoffe, dass ich mein Problem genug deutlich geschildert habe. Sonst fragt bitte nach.
mfg zempsit
Ich habe in einer MySQL-Datenbank diverse Ranglisten von mehreren Sportdisziplinen mit den Rekordwerten einer Schule.
Nun habe ich vor, eine TopTen-Rangliste zu machen, so eine Art Medaillenspiegel, wo es darum geht, wer die meisten TopTen-Klassierungen hat.
Ich habe also nun für jeden Schüler, der in den Topten mindestens einer Disziplin vorkommt, ein Array aus der DB gelesen. Der Aufbau dieses Arrays ist folgendermassen:
$schuler_x = array( "1. Ränge" => Anzahl, "2. Ränge" => Anzahl, "3. Ränge" => Anzahl, etc.)
Nun habe ich all diese Arrays von den einzelnen Schüler in ein weiteres Array verpackt. Dieses Array will ich nun so sortieren, damit die Reihenfolge stimmt. Es soll zuerst nach dem 1. Rang, dann nach dem 2. Rang, dann nach dem 3. Rang usw. sortiert werden.
Meines Wissens ist es ja möglich mit usort() ein solches mehrdimensionales Array zu sortieren. Aber die Funktion würde wohl ziemlich kompliziert.
Eine Variante wäre es auch, alles in eine MySQL-Tabelle zu speichern und dann von dort sortiert auszulesen.
Aber vielleicht weiss ja jemand von euch eine relativ einfache Variante, wie ich die Rangierung am Besten hinkriege ohne das über MySQL zu machen.
Ich hoffe, dass ich mein Problem genug deutlich geschildert habe. Sonst fragt bitte nach.
mfg zempsit