Seite 2 von 2

Verfasst: 09.12.2004 17:53
von DarkDragon
Hmm... ich dachte ich hätte es hochgeladen. Naja, nu hab ich es hochgeladen. Aber im moment gibts nur die lib.zip version. Nicht die für den eigenen Webspace.

[EDIT]funzt nicht. Tripod ist einfach beschissen: http://bradan.i-networx.de/lib.zip

[EDIT] :evil: :evil: :evil: :evil: :evil: :evil: :evil: :evil: :evil: :evil: :evil: :evil: :evil: :evil: Ich hasse free-webspace. Aber auf meinen Webspace will ichs nicht hochladen, da zu gefährlich. Alles kaputt.

Verfasst: 09.12.2004 18:07
von glubschi90
Ufff...
Ich will doch nur meine HighScores uploaden :cry: :cry:
Warum geht denn alles Schief... :cry: :cry:
*ausdemzimmerrenn* (:mrgreen:)

Verfasst: 09.12.2004 19:24
von Kiffi
> Ich will doch nur meine HighScores uploaden :cry: :cry:

'nur' den Highscore hochladen ist gar nicht so einfach, wie das auf den
ersten Blick aussehen mag.

Check mal folgende Punkte:

* Verfügst Du über eigenen Webspace?

* Unterstützt dieser entweder CGI, PHP oder ASP?

* Du benötigst auch noch eine Datenbank (sei es eine 'richtige' DB oder eine Textdatenbank)

Kannst Du alle Punkte mit 'Ja, habe ich, kenn ich, kann ich' abhaken, dann
muss eine Funktionalität auf dem Webspace nachgebildet werden, die
Deinen Highscore in Form eines URL entgegennimmt und diesen dann in
die Datenbank einträgt. Diese Funktionalität kannst Du entweder mittels
PHP oder ASP-Script oder aber einem CGI-Progrämmchen realisieren.

Das sind alles grundlegende Überlegungen, die man anstellen muss, um so
was zu realisieren. Das Script (PHP, ASP) oder Dein CGI muss Du dann
selber programmieren.

Grüße ... Kiffi

Verfasst: 09.12.2004 19:49
von DarkDragon
So schwer ist das nicht. Wers haben will und keinen unsinn damit anstellt:

Code: Alles auswählen

Procedure.s PostToHost(Host$, File$, _Data$)
  ConnectionID = OpenNetworkConnection(Host$, 80)
  If ConnectionID
    String$ = ""
    If _Data$ <> ""
      String$ + "POST " + File$ + " HTTP/1.1" + Chr(13) + Chr(10)
    Else
      String$ + "GET " + File$ + " HTTP/1.1" + Chr(13) + Chr(10)
    EndIf
    String$ + "Host: " + Host$ + Chr(13) + Chr(10)
    String$ + "Content-Type: application/x-www-form-urlencoded" + Chr(13) + Chr(10)
    String$ + "Connection: close" + Chr(13) + Chr(10)
    If _Data$ <> ""
      String$ + "Content-Length: " + Str(Len(_Data$)) + Chr(13) + Chr(10)
    EndIf
    String$ + Chr(13) + Chr(10)
    String$ + _Data$ + Chr(13) + Chr(10)
    SendNetworkString(ConnectionID, String$)
    If _Data$ = ""
      Repeat : Until NetworkClientEvent(ConnectionID) = 2
      Buffer = AllocateMemory(10000)
      ReceiveNetworkData(ConnectionID, Buffer, 10000)
      CloseNetworkConnection(ConnectionID)
      ProcedureReturn PeekS(Buffer)
    EndIf
    CloseNetworkConnection(ConnectionID)
  EndIf
EndProcedure

Procedure.s NewHighscore(RoomUser.s, Name.s, Score.l) ;Creates a new highscore
  PostToHost("mitglied.lycos.de", "/dani008/HS/new.php", "room="+RoomUser+"&name="+Name+"&score="+Str(score))
  ProcedureReturn PostToHost("mitglied.lycos.de", "/dani008/HS/"+RoomUser+"/index.txt", "")
EndProcedure

Verfasst: 09.12.2004 21:33
von Epyx
Mal ne andere Frage, hast du denn das Spiel schon fertig Glubschi ??

Verfasst: 11.12.2004 14:10
von glubschi90
Epyx hat geschrieben:Mal ne andere Frage, hast du denn das Spiel schon fertig Glubschi ??
Ist gar kein Spiel :mrgreen:
Das brauch ich für mein neues Infi 2! :)

Verfasst: 11.12.2004 20:12
von glubschi90
@DarkDragon
Hab jetzt Zeit gehabt um den Code auszuprobieren - FUNKTIONIERT :D :D

:praise: DANKE!! :mrgreen:

Verfasst: 11.12.2004 22:44
von GPI
Nettes Beispiel, wie man es nicht machen kann. Wer ein bischen rumexperimentiert findet schnell herraus, das die Daten absolut ungesichert übertragen werden...

Abgesehen davon: Dein Beispiel funktioniert schon nicht mehr, wenn ein Proxy benötigt wird...

Verfasst: 12.12.2004 01:48
von glubschi90
GPI hat geschrieben:Nettes Beispiel, wie man es nicht machen kann.
... Und wie mach man es dann? /:-> ( :wink: )

Verfasst: 12.12.2004 08:16
von DarkDragon
GPI hat geschrieben:Nettes Beispiel, wie man es nicht machen kann. Wer ein bischen rumexperimentiert findet schnell herraus, das die Daten absolut ungesichert übertragen werden...

Abgesehen davon: Dein Beispiel funktioniert schon nicht mehr, wenn ein Proxy benötigt wird...
Deshalb wollte ich nie den Source freigeben. Außerdem: wer hat gesagt, dass man damit Passwörter oder ähnliches übertragen soll?