Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Tutorials und Kurse (https://www.delphipraxis.net/36-tutorials-und-kurse/)
-   -   Delphi Online Highscore liste (https://www.delphipraxis.net/122958-online-highscore-liste.html)

Blink 24. Okt 2008 22:38


Online Highscore liste
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

da ich einige anfragen bekommen habe. Wie ich das mit der Online High score liste in meinem Spiel Autorennen realisiert habe. Habe ich diese Tutorial dazu geschrieben.

Ich hoffe es ist leicht verständlich.

fkerber 24. Okt 2008 22:44

Re: Online High score liste
 
Hi!

Vielen Dank für dein Tutorial.
Könntest du es vllt. auch hier anhängen, sodass es auch verfügbar ist, falls der andere Server mal down ist!

Danke!

Ciao, Frederic

mleyen 12. Feb 2009 13:47

Re: Online Highscore liste
 
Danke für das Tutorial, php/sql ist ne super Idee.
(Ich hätte es glatt mit Server<->Client Programmen auf meinem privaten Rechner mittels Portforwarding gemacht :wall: )

Kurze Frage noch:
Code:
$name  = strip_tags($_POST['n']);
$punkte = strip_tags($_POST['p']);
Ist das jetzt auch wirklich sicher, wenn man die Variableninhalte so direkt in eine MySQL-Anweisung schreibt?
Oder muss man da noch etwas anderes beachten?
Danke nochmals. :thumb:

Blink 14. Feb 2009 14:06

Re: Online Highscore liste
 
Zitat:

Zitat von spawn89
Ist das jetzt auch wirklich sicher, wenn man die Variableninhalte so direkt in eine MySQL-Anweisung schreibt?
Oder muss man da noch etwas anderes beachten?

Hallo, wie meinst du das den jetzt mit sicher? Sicher in dem sinne von Betrügern/ Cheatern die sich mit gefälschten punkten in die Highscoreliste mogeln wollen?

mleyen 14. Feb 2009 14:38

Re: Online Highscore liste
 
Ne, die manuelle Aufrufmöglichkeit kann man ja mit einer eigenen Verschlüsselung und sid erschweren.

Ich kenne mich in php/mysql leider noch nicht so aus.
Aber was ich bis jetzt so gehört habe ala "MySQL-Injection" etc. macht mich immernoch ein bisschen misstrauisch.

Am besten mach ich das an einem Beispiel klar:
Dein SQL-Kommando sieh wie folgt aus:
Code:
$sql = "INSERT INTO HSTEST (name,punkte) VALUES ('$name','$punkte')";
mysql_query($sql);
Was würde jetzt passieren, wenn der User folgendes als Namen angibt:
$name = "blupp', '10'); Drop Database;"

Dann ständ in dem SQL-Kommando doch folgendes:
Code:
INSERT INTO HSTEST (name,punkte) VALUES ('1', '10'); Drop Database; ', '0')
Wenn das dann ausgeführt wird, ist dann nicht die ganze Datenbank futsch?
Jetzt wollte ich fragen, ob man wirklich gegen Angriffe solcher Art "sicher" ist?

(Am besten nutz ich erstmal gar keine DB, sondern lass alles in txt dateien speichern.)

Blink 18. Feb 2009 17:44

Re: Online Highscore liste
 
Hallo, also man kann ja die HTML und PHP befehl aus den übergebenen Variablen herausfiltern so das die erst gar nicht in die Datenbank geschrieben werden. So mache ich das auch in meiner Highscore liste, für mein Spiel.

Wenn ich mal wieder Zeit habe dann werde ich da Tutorial mal etwas auffrischen.

Ansonsten kann ich dir noch OHS als Highscoreliste empfehlen, das kommt ganz ohne My SQL aus. Wie du das in Delphi verwendest, kannst du hier in meinem Open Source Spiel Twins Game 2008 sehen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:48 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz