PHP-MySql Highscore Server

  • Hallo,

    ich habe vor längerer Zeit mal einen PHP Highscore Server, der MySql verwendet, geschrieben. Durch den Highscore Server von Spreger120 , habe ich diesen in meiner Scriptesammlung entdeckt.

    Installation
    • Lade das Archiv im Anhang herunter, und entpacke es
    • Lade die index.php-Datei und die config.php-Datei auf deinen Webserver
    • Aktiviere auf dem Webserver PHP und MySql (falls nötig)
    • Lade die Seite http://.../config.php?aktion=install
    • Gebe die erforderlichen Daten ein
    • Klicke auf "Weiter"
    • Wenn die Meldung "Die MySql-Daten wurden erfolgreich gespeichert. ..." erscheint, klicke auf den Link
    • Nun kannst du die UDF verwenden
    MySql-Daten ändern
    • Lade die Seite http://.../config.php?aktion=install
    • Gebe die Admin-E-Mail-Adresse und das Admin-Passwort, die du bei der Installation bestimmt hast, ein
    • Führe die Schritte 5-6 von der Installation durch
    • Bei bedarf kannst du auch den Schritt 7 ausführen, um die Datenbank neu zu schreiben (die gespeicherten Scores werden nicht übertragen)

    Wenn du immer den selben Pfad zur index.php-Datei benötigst, ändere diesen am besten in der UDF.

    Wie ist der Highscore Server aufgebaut?

    Bei meinem Highscore Server werden alle gespeicherten Highscores einem Programm zugeordnet.
    Bei speichern eines Highscores muss deshalb auch ein Programm angegeben werden.
    Die Programme werden in der Tabelle 'progs' gespeichert, die Scores in der Tabelle 'save'. Zu jedem Programm kann ein Maximalwert des Scores festgelegt werden.

    Funktionen:

    • Scores werden Programmen zugeordnet
    • Bei jedem Programm gibt es ein Maximalscore
    • UDF zum speichern und lesen von Scores
    • Design im Adminbereich

    Aktuelle Version PHP-MySql: 1.1
    Aktuelle Version UDF: 1.0 (kompatibel zur 1.0, 1.0.1 und 1.1 Version des PHP-MySql-Scripts)

    Geplante Funktionen:

    • Admincenter mit den folgenden Funktionen:
      • Scores einsehen/bearbeiten/löschen
      • Programme leichter hinzufügen/bearbeiten/löschen

    Update 1.0.1:

    • MySql-Installationsanweisungen aktualisiert

    Update 1.1:

    • Design hinzugefügt
    • Administratorbereich getrent
    Screenshots

    Es gibt ein Update. Nähers in Beitrag 16. (Dieser Beitrag ist nicht verändert worden)

    Kritik und Anregungen sowie Vorschläge sind erwünscht. :)

  • Ich glaube, ich bastel auch Highscore System in PHP ;) :rofl:
    Dann wären wir schon 4? oder mehr?

  • Hallo Magnus,
    Also ich habe mal den Highscore-Server bei mir installiert (Hetzner.de Server)

    Dass bekomme ich als Rückmeldung, Wenn ich versuche, Einen Highscore einzutragen,
    MySQL Verbindung ist alles erfolgreich

    Code
    http://www.dp-ware.de/HSS/index.php?aktion=add_score&Name=Dominik&Score=9&ProgName=Test
    <br />
    <b>Warning</b>:  mysql_fetch_array(): supplied argument is not a valid MySQL result resource in <b>/usr/www/users/dpgwar/HSS/index.php</b> on line <b>65</b><br />
    can_not_find_programm
    False

    PS: Ich sehe du verwendest im Script zur Sicherung des High-Scores die Variabel: $MaxScore
    Aber ich finde sie nirgends, Bzw. Nirgendwo definiert, In der
    MySQL auch nicht sowie "data.php"

  • Hallo Magnus,
    Also ich habe mal den Highscore-Server bei mir installiert (Hetzner.de Server)

    Dass bekomme ich als Rückmeldung, Wenn ich versuche, Einen Highscore einzutragen,
    MySQL Verbindung ist alles erfolgreich

    Code
    http://www.dp-ware.de/HSS/index.php?aktion=add_score&Name=Dominik&Score=9&ProgName=Test
    <br />
    <b>Warning</b>:  mysql_fetch_array(): supplied argument is not a valid MySQL result resource in <b>/usr/www/users/dpgwar/HSS/index.php</b> on line <b>65</b><br />
    can_not_find_programm
    False

    PS: Ich sehe du verwendest im Script zur Sicherung des High-Scores die Variabel: $MaxScore
    Aber ich finde sie nirgends, Bzw. Nirgendwo definiert, In der
    MySQL auch nicht sowie "data.php"

    Die Deklaration der Variable $MaxScore erfolgt in der Zeile 67, ich hatte allerdings vergessen, bei der Installation die entsprechende Spalte anzulegen.

    Update 1.0.1 :)

    Magnus

  • Warum funktioniert das nicht?
    Hättest auch ein BeispielScirpt reinmachen können :D

    [autoit]

    #include <HighScore.au3>
    $test1="test1"
    $testtest="testtest"
    global $Lines
    global $PAGE
    global $LIMIT

    [/autoit][autoit][/autoit][autoit]

    _ScoreSave_Save($test1, 132, $testtest)
    MsgBox(0, "gespeichert","gespeichert")

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    _ScoreSave_Read($test1, $PAGE = 1, $LIMIT = True)
    MsgBox(0,"Highscore",$Lines)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit]


    Ich bekomme bei der 2ten MsgBox nichts raus.
    Die Datenbanken sind erstellt!

  • Warum funktioniert das nicht?

    Der Fehler liegt in dieser Zeile:

    [autoit]

    _ScoreSave_Read($test1, $PAGE = 1, $LIMIT = True)

    [/autoit]


    Du musst als 2. und 3. Parameter einfach nur einen Wert eintragen. z.B.:

    [autoit]

    _ScoreSave_Read($test1, 1, True)

    [/autoit]


    Du kannst diese aber auch ganz weglassen:

    [autoit]

    _ScoreSave_Read($test1)

    [/autoit]

    Ich werde mir Morgen mal das Gesamte anschauen, und eine Aktualisierte Fassung mit Beispielen rausbringen.

    Mfg Magnus

    Magnus

  • So. Hier ist jetzt die neue Version:

    • Bitte rufe in der Installation (config.php?aktion=install) nochmal die EInstellungen auf. Dort gibt es eine neue Option.
    • Bitte in der Datenbank noch per Hand die Programme einfügen. Ansonsten kann man ja keine Scores speichern, die Programmen zugeordnet sind. :)
    • Hier ein Beispiel zur Verwendung der UDF: (evtl. Pfad zur UDF und zum Server ändern)[autoit]#include "udf.au3"
      #include <Array.au3>
      ;~ Hier den Pfad zum Server eintragen
      _ScoreSave_SetURL("http://localhost/higss/")
      $ProgName = "Test"
      MsgBox(0, "", _ScoreSave_Save("Ich", 10, $ProgName))
      $Scores = _ScoreSave_Read($ProgName)
      _ArrayDisplay($Scores)[/autoit] Dieses Script speichert den Score von 10 Punkten vom User "Ich" im Programm "Test" ab und stellt ihn anschließend mit _ArrayDisplay dar.
    • Die UDF hat eine neue Funktion: _ScoreSave_SetURL($URL). Mit diesem kann man den Url zum Server festlegen.
    • Bitte alle Daten aus dem Ordner in den Server-Ordner verschieben. Die Konfiguration bleibt erhalten.

    Ich hoffe das alles Funktioniert und ich nicht´s vergessen habe. :) Viel Spaß mit der neuen Version.
    Magnus