Philip Naggert: Sortieren in PHP

Hallo,

ich möchte gerne Statistiken, wie z.B. Gelbe Karten, Tore und Elfmeter sortieren lassen:

Z.B.:

Die Elfmeter könnte man sortieren nach:

  • Verein
  • Spielernamen
  • Anzahl der Elfmetertore
  • Spieltag

Wie stelle ich das an ?

Bin ein absoluter Beginner in Sachen PHP, deswegen bitte eine Idiotenerklärung, wenns geht *g*

Gruß
Philip Naggert

  1. Hallo,

    ich möchte gerne Statistiken, wie z.B. Gelbe Karten, Tore und Elfmeter sortieren lassen:

    Z.B.:

    Die Elfmeter könnte man sortieren nach:

    • Verein
    • Spielernamen
    • Anzahl der Elfmetertore
    • Spieltag

    Wie stelle ich das an ?

    Bin ein absoluter Beginner in Sachen PHP, deswegen bitte eine Idiotenerklärung, wenns geht *g*

    Gruß
    Philip Naggert

    bei was für ner DBank?
    bei mySQL
    sellect * from deinertabelle where (deine Abfrage)

    gruss chich

  2. ich möchte gerne Statistiken, wie z.B. Gelbe Karten, Tore und
    Elfmeter sortieren lassen:

    Die Elfmeter könnte man sortieren nach:

    »»

    • Verein
    • Spielernamen
    • Anzahl der Elfmetertore
    • Spieltag

    »»

    Wie stelle ich das an ?

    Vorneweg: Ich habe zugegebenermaßen soviel Ahnung vom Fußball wie du wahrscheinlich von PHP ;) Bei deiner Liste oben fällt mir aber schonmal auf, daß man mit einem Elfmeter nur ein Tor schießen kann, denn um mit einem Schuß beide Tore zu treffen muß man schon gewaltig draufdonnern - selbst unter Doping hält das wohl weder das Tor, noch der Ball, noch der Fuß des Spielers aus. Insofern kann ich mit Elfmetertore nichts anfangen.

    Du solltest also als erstes aufstellen, was du für Daten hast und wie du die am besten in deiner Datenbank organisierst. Über eine Datenausgabe kann man sich erst Gedanken machen, wenn man weiß, wo und wie die Daten herkommen sollen.

    Mir fallen für dein Elfmeterproblem zum Beispiel fünf Grüppchen ein:

    a) Elfmeter (Spieler, Spiel)
    b) Spiele (wer gegen wen, Datum)
    c) Spieler (Name)
    d) Spielervereinshistorie (aktueller Verein, alte Vereine)
    e) Vereine

    Das müssen aber noch keine eigentlichen Tabellen sein, einiges könnte man davon sicher auch gut zusammenfassen.

    Schreib doch mal, das scheint eine interessante Sache zu werden! Zumindest ist es kein Warenkorb ;)

    Gruß,
      soenk.e

    1. Vorneweg: Ich habe zugegebenermaßen soviel Ahnung vom Fußball wie du wahrscheinlich von PHP ;) Bei deiner Liste oben fällt mir aber schonmal auf, daß man mit einem Elfmeter nur ein Tor schießen kann, denn um mit einem Schuß beide Tore zu treffen muß man schon gewaltig draufdonnern - selbst unter Doping hält das wohl weder das Tor, noch der Ball, noch der Fuß des Spielers aus. Insofern kann ich mit Elfmetertore nichts anfangen.

      Du solltest also als erstes aufstellen, was du für Daten hast und wie du die am besten in deiner Datenbank organisierst. Über eine Datenausgabe kann man sich erst Gedanken machen, wenn man weiß, wo und wie die Daten herkommen sollen.

      Mir fallen für dein Elfmeterproblem zum Beispiel fünf Grüppchen ein:

      a) Elfmeter (Spieler, Spiel)
      b) Spiele (wer gegen wen, Datum)
      c) Spieler (Name)
      d) Spielervereinshistorie (aktueller Verein, alte Vereine)
      e) Vereine

      Das müssen aber noch keine eigentlichen Tabellen sein, einiges könnte man davon sicher auch gut zusammenfassen.

      Schreib doch mal, das scheint eine interessante Sache zu werden! Zumindest ist es kein Warenkorb ;)

      Hi,
      danke für die Antwort erstmal :) Es gibt ja mehrere Spieltage und wenn ein spieler z.B. am 1. und am 3. Spieltag ein Elfmetertor macht, dann hat er ja shcon 2 Elfmetertore, also kann man das auch so sortieren.

      Du hast halt hier die Tabelle:

      _____________________________________________

      Elfmetertore
      sortieren nach: Tore
      ---------------------------------------------
      Detlev Dammeier
      Marcio Borges
      Jan Simak
      _____________________________________________

      So könnte das z.B. aussehen.

      Nun kann man Tore/Spieler/Verein anklicken und die Spieler werden neu sortiert... :)

      Gruß
      Philip Naggert

      1. Du hast halt hier die Tabelle:

        »»

        _____________________________________________

        Elfmetertore
        sortieren nach: Tore
        ---------------------------------------------
        Detlev Dammeier
        Marcio Borges
        Jan Simak
        _____________________________________________

        »»

        So könnte das z.B. aussehen.

        Das ist doch schonmal was. Du hast bei SQL die Möglichkeit, die Zeilen im Ergebnis zu gruppieren. Deine Datenbank-Tabelle würde also
        zum Beispiel folgendermaßen aussehen:

        Spieler           Spiel                               Datum
        |Detlev Dammeier | Arminia Bielefeld-St. Pauli       | 1.4.2001 |
        |Detlev Dammeier | Arminia Bielefeld-HSV             | 5.9.2001 |
        |Marcio Borges   | Arminia Bielefeld-FC Kleckersdorf | 3.6.2001 |
        |Jan Simak       | Hannover 96-SV Dümpelbach         | 4.9.2001 |

        Mit "select spieler,count(*) as tore group by spieler order by tore" bekommst du dann eine Liste mit drei Zeilen, genauso wie deine oben ohne die Vereinsspalte.
        SQL bzw. die Datenbank gruppiert also alles mit gleichem Spielernamen und zählt die zusammengefassten Zeilen mit count().

        Bis hierin noch kein PHP. Mit PHP bräuchtest du nur noch das Ergebnis der Abfrage auszugeben.

        Dein kompletter Tabellenaufbaucode könnte also so aussehen:

        echo "<table>";
        $result=mysql_query("abfrage von oben"); // Abfrage an Datenbank schicken
        while {$row=mysql_fetch_row($result))    // jeweils 1 Zeile vom Ergebnis holen
         {
          echo "<tr><td>$row[0]</td><td>$row[1]</td></tr>"; // ..und ausgeben
         };
        echo "</table>";

        Das Ganze jetzt im Detail aufzudröseln, sprengt hier sicher den Rahmen. Besorg' dir am besten die PHP-Anleitung von http://php.net und die MySQL-Anleitung von http://mysql.com.
        Beide auf den ersten Blick etwas abschreckend, aber im Endeffekt sehr gut strukturiert. Wenn du in den Anleitungen als Anfang nach den oben benutzen Befehlen suchst, bist du schon auf dem besten Wege :)

        Gruß,
          soenk.e