Aleks: Bestenliste per PHP

Hallo SelfHTMLler,

vielleicht könnt Ihr mir auf die Sprünge helfen:

Ich hab einen Ordner mit TXT-files. Diese sind nach den Benutzern benannt. In den files ist die erreichte Punktzahl vermerkt.

Nun möchte ich ein Script erstellen, dass die Benutzernamen nach der Höhe der Punkte anordnet.

Ich weiß nicht, ob das OHNE eine Datenbank möglich ist, aber ich vertrau auf eure Fähigkeiten. Im Archiv und auf Google habe ich schon gesucht.

Danke für eure Hilfe.
Gruß

Aleks

  1. Hello Aleks,

    da bist Du ja schon der erste Anwender für Dennis und meine Funktionssammlung. Einen Entwurf findest Du unter http://selfhtml.bitworks.de

    Da kannst Du alle User in eienr Datei speichern und ihnen eine Usernummer geben. und wenn Du sie dann soriteren willst nach bestimmten Werten, musst Du sich einfach nur ein ganz bisschen mit Arrays beschäftigen.

    In die Select-Funktion werden wir aber das Sortieren nach Spalte noch einbauen...

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau
  2. Hallo Aleks,
    ich würde dir vorschlagen als erstes alle Punktezahlen zu lesen und in ein Array zu schreiben. Danach kannst du dieses Array dann per PHP-Funktion sortieren und weiterverarbeiten.

    Viele Grüße
    David

    Ein paar Anregungen:

    http://www.selfphp.info/funktionsreferenz/verzeichnis_funktionen/readdir.php

    http://www.selfphp.info/funktionsreferenz/dateisystem_funktionen/readfile.php
    http://www.selfphp.info/funktionsreferenz/array_funktionen/arsort.php

    1. hi,

      ich würde dir vorschlagen als erstes alle Punktezahlen zu lesen und in ein Array zu schreiben. Danach kannst du dieses Array dann per PHP-Funktion sortieren und weiterverarbeiten.

      wobei es bei mehreren usern mit gleicher punktzahl dann natürlich probleme geben wird, wenn du die punktzahl als key verwenden willst ...

      gruß,
      wahsaga

      --
      [ Hier könnte Ihre Werbung stehen! ]
      1. Moin!

        wobei es bei mehreren usern mit gleicher punktzahl dann natürlich probleme geben wird, wenn du die punktzahl als key verwenden willst ...

        Wer sagt denn das? :)

        Die Punktezahl ist als Key nicht geeignet, weil Punktezahlen typischerweise nicht eineindeutig und fortlaufend sind.

        Während des Einlesens einen binären Baum zu generieren wäre generell eine gute Methode - leider bietet PHP dafür keine wirklich geeigneten Funktionen, also muß sich die zu wählende Methode an den Möglichkeiten orientieren.

        Den Benutzernamen als Key und die Punktzahl als Arraywert kann man ganz prima mit asort() sortieren. Das Resultat muß man dann nur noch mit einer foreach-Schleife ausgeben.

        - Sven Rautenberg