Hi-Score auf eigener Homepage ?machbar mit Purebasic ?

Anfängerfragen zum Programmieren mit PureBasic.
xverbatim
Beiträge: 88
Registriert: 20.08.2005 20:19

Hi-Score auf eigener Homepage ?machbar mit Purebasic ?

Beitrag von xverbatim »

Hallo,

ich habe da mal eine Frage, gibt es die Möglichkeit, mit reinen Purebasicmitteln eine Hi-Score auf einer Homepage hinzukriegen.

Generell stelle ich mir eben ein Spiel vor, wobei eben die 10 besten Spieler auf meiner Homepage auf die Hi-Scoreliste kommen...
also das Spiel wird Offline gespielt und nur bei der Abfrage und Aktuallisierung der Hi-Score Online geschaltet.

geht soetwas ?

oder muß man das irgendwie mit PHP machen ?

Würde mich freuen, wenn mir dazu jemand etwas sagen könnte oder Beispielcode hat ;-)

Gruß
XVERBATIM
a14xerus
Beiträge: 1440
Registriert: 14.12.2005 15:51
Wohnort: Aachen

Beitrag von a14xerus »

Direkt über PB eine Dtaei aufm Server ansprechen ? nein
Nur wenn du herunterläds, und wieder hochläds, oder über MySQL arbeitest.
Ersteres ist unsicher, php ist im vergleich zum 2. einfacher (einfach eine datei mit php erstellen und verarbeiten)
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Beitrag von PMTheQuick »

Also nur mit PB würde ich mal sagen: Nein, bin aber nicht 100% sicher...

Sonst würde ich es mit PHP machen, über GET das du dann zum Beispiel http://www.server.land/highscore.php?sc ... PMTheQuick so machen... Nur solltest du den Score verschlüsseln, sonst ist mogeln ziemlich leicht... ;) Bei PHP & PB könnte ich helfen, melde dich einfach... :)

Gruss
PMTheQuick :D

EDIT: Wie willst du es denn abspeichern auf dem Server? Textfile oder MySQL?
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

bevor wir ins spekulieren kommen, sollten wir lieber STARGATE fragen...

er hat schließlich online-highscore für seine games implementiert...
der schritt, die auf der Homepage anzeigen zu lassen, wäre nur ein kleiner,
wenn er das nicht schon längst auch implementiert hat.

also, PN an STARGATE mit nem Link zu diesem thread.

Der Moderator war so frei, und hat es erledigt. - Kaeru fecit
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Mit POST oder GET ist es wohl sehr einfach die Datei mit PHP zu bearbeiten.

Dann gibt es noch die Moeglichkeit mit PB oder PHP einen kleinen Server
zu schreiben und ueber z.B. Streams Daten zu verschicken, aber das ist
etwas uebertrieben :D
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

... auch eine Möglichkeit wäre es, die Etna-Lib hierfür zu verwenden

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

PHP sollte man schon haben, ohne wirds schwierig. Mit der von Peter
erwähnten Lib benötigt man in jedemfall einen Datenbank-Server ala MySQL,
wenn ich die jetzt richtig verstanden habe.

Also erstmal checken, welche Möglichkeiten bietet mein Webspace!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

Ich erzähle mal wie ich es gemacht habe :

Das Spiel ist ja in PB geschrieben und die HighScore wäre PHP

Nun zum vorgehen:
- zuerst braucht man ein PHP fähigen Server.
- Dann schreibst du mit php eine Highscoretabelle (wenn du nicht weißt wie, sende ich dir ein Beispiel)
- Diese php-Datei wird nun im Internet aufgerufen und erhält dabei die Infos die sie braucht
- In PB sieht das dann so aus :

Code: Alles auswählen

    
OpenWindow(...)
 CreateGadgetList(...)
  URL$ = "http://.../HighScore.php?Punkte="+Str(Punkte)&Name="+Name$
  WebGadget(..., URL$) 
In der php-Datei wird nun mit verschiedenen Befehlen diese URL ausgelesen.
ZU BEACHTEN IST ! Man muss Str(Punkte) zusätzlich irgendwie verschlüsseln, sonst kann gecheatet werden.

Hat php die Daten ausgelesen kann/darf php auf dem Server "schreiben"
php öffnet eine Datei und schreibt die werte hinein.
danach wird dann die html und php die Tabelle angezeigt.

Vor kurzem habe ich die "macht" von MySQL erkannt, vllt wäre das eine alternative zum schreiben in einer Textdatei
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Alles ist machbar, Herr Nachbar!

Allerdings solltest du unter keinen Umständen GET nehmen, sondern POST, was STARGATE's Variante unter den Tisch fallen lässt. Da musst du dann schon richtig mit den Netzwerkbefehlen und HTTP arbeiten.

Denn: Ich kann ja einfach nachlesen, welche Seiten aufgerufen wurden und sehe dann die *komplette* URL. Mit POST werden die Daten im HTTP-Request-Body verschickt, so kann schon mal ein Teil der User diese Daten nicht einsehen.

Und außerdem: URL's haben eine maximale Länge, die weiß ich zwar geraade nicht, aber du darfst keinen Roman anhängen, es gibt sogar einen eigenen Fehlercode (Request URI too long), für zu lange URLs.

Bei POST ist die Datengröße unbeschränkt, du könntest auch Gigabyte-weise deine Daten schicken (kein Witz!). Und encodieren und decodieren musst du deine Daten auch nicht, im Gegensatz zu der GET Methode. Dazu musst du nur den richtigen Charset wählen (ISO-8859-1).
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
xverbatim
Beiträge: 88
Registriert: 20.08.2005 20:19

php kommt nicht in frage ;-(

Beitrag von xverbatim »

hi,

erstmal vielen Dank für die reichlichen Beiträge, leider habe ich gerade herausgefunden, das ARCOR kein PHP unterstützt und somit fällt die Sache wohl flach...

Vielleicht ein anderen kostenlosen Webhoster nehmen und die Seite; also die die Hi-Score Daten eben vom Programm aus immer uploaden und dann downloaden...und die Seite dann von meiner Arcor Homepage aufrufen?

Würde doch auch gehen oder spricht da etwas dagegen?

Denn anderen Anbieter will ich aus Sicherheitsgründen nehmen, wenn ich in meinem Programm die internen Daten für meinen Arcor Zugriff angebe ohje, lieber nicht oder ?

Oder hat jemand noch eine Idee ????

Die Etna - Lib hab ich mir angesehen, allerdings mein englisch ist mehr als miserabel und verstehe null ;-((

gruß xverbatim
Antworten