Page 1 sur 1

envoi de score de jeu via http

Publié : lun. 11/oct./2004 18:25
par Thyphoon
Salut les enfants !

J'aurais besoin de vos conseilles ! Comments puis-je faire
pour que mon jeu fasse (en transparent un appel HTTP: et le lecture d'une page html ou txt distante via le web?
Le but etant de mettre sur mon site(php/mysql) un tableau des scores !
Je ne vous demande pas un code tout fait (quoi que si quelqu'un a ça je suis preneur lolllll :lol: ) mais plus vers quoi je dois me tourner !
J'ai essayer de faire quelques choses mais je dois être completement a côté de la plaque

Code : Tout sélectionner

If InitNetwork() = 0
  MessageRequester("Error", "Can't initialize the network !", 0)
  End
EndIf

Port = 80

ConnectionID = OpenNetworkConnection("http://www.thyphoon.com/index.php", 80)
ReceiveNetworkData(ConnectionID, Buffer, 1000) 
MessageRequester("Info", "String: "+PeekS(Buffer), 0)

CloseNetworkConnection(ConnectionID)
Est ce que je suis sur la bonne voie ou pas du tout

Publié : lun. 11/oct./2004 18:37
par Heis Spiter
Je ne pense pas que tu sois sur le bonne voie. Le mieux serait à mon humble avis d'envoyer une requete http, et d'en récupérer le contenu. Soit en clair
"GET /index.php HTTP/1.1"
Je pense que c'est ça (à quelques détails près !)

Publié : lun. 11/oct./2004 18:49
par Thyphoon
Merci !
J'ai trouvé quelques exemples sur PureArea ...mais pour l'instant je nage lollllllllllllllll
voilà ce que je fais mais ça marche pas du tout

Code : Tout sélectionner

InitNetwork()

    Procedure MyCheckInternetConnection()
        If InternetGetConnectedState_(0, 0) 
          result = 1
        Else
          result = 0
        EndIf
        ;
        ProcedureReturn result
    EndProcedure

Debug "Internet ?:"+Str(MyCheckInternetConnection())

ConnectionID = OpenNetworkConnection("www.thyphoon.com", 80) 
Debug Str(ConnectionID )
If ConnectionID 
  com$="GET /index.php HTTP/1.1"+Chr(13)+Chr(10) 
  Res = SendNetworkData(ConnectionID,@com$,Len(com$)) 

    Repeat 
    
    Delay(10) 
    Result = NetworkClientEvent(ConnectionID) 
  Debug Str(Result)
    Select Result 
  
    Case 2 
      Content$ = Space(14500) 
      ReceiveNetworkData(ConnectionID,@Content$,14500) 
      Ok = 1 
      MessageRequester("Done!","Your Data" + Chr(13) + Chr(10) + Content$,0) 
      CloseNetworkConnection(ConnectionID) 
    EndSelect 
    
    Until Ok = 1 
EndIf 
J'ai pas tres bien compris le principe de ce qu'on doit envoyé comme donné pour qu'a l'autre bout j'ai une reponse...

Publié : lun. 11/oct./2004 18:53
par Heis Spiter
Si je fais

Code : Tout sélectionner

InitNetwork() 

    Procedure MyCheckInternetConnection() 
        If InternetGetConnectedState_(0, 0) 
          result = 1 
        Else 
          result = 0 
        EndIf 
        ; 
        ProcedureReturn result 
    EndProcedure 

Debug "Internet ?:"+Str(MyCheckInternetConnection()) 

ConnectionID = OpenNetworkConnection("www.heisspiter.no-ip.com", 80) 
Debug Str(ConnectionID ) 
If ConnectionID 
  com$="GET /index.php HTTP/1.1"+Chr(13)+Chr(10) 
  Res = SendNetworkString(ConnectionID,com$) 

    Repeat 
    
    Delay(10) 
    Result = NetworkClientEvent(ConnectionID) 
  Debug Str(Result) 
    Select Result 
  
    Case 2 
      Content$ = Space(14500) 
      ReceiveNetworkData(ConnectionID,@Content$,14500) 
      Ok = 1 
      MessageRequester("Done!","Your Data" + Chr(13) + Chr(10) + Content$,0) 
      CloseNetworkConnection(ConnectionID) 
    EndSelect 
    
    Until Ok = 1 
EndIf 
Ca me génére un évenement 356 8O.
Du côté d'Apache =>
80.13.46.239 - - [11/Oct/2004:19:53:44 +0200] "GET /index.php HTTP/1.1" 400 355
...Ca doit avoir rapport avec le 355...
[EDIT]Viens de voir, me suis planté.... 356, c'était l'ID de connexion :()

Publié : lun. 11/oct./2004 19:01
par Heis Spiter
Bon, 400 c'est la réponse Apache, à savoir mauvaise requête... On est pas barré ^^

Publié : lun. 11/oct./2004 19:24
par Thyphoon
Merci Heis de te pancher sur mon pb c'est très sympa! :P
Il y a des exemples sur PurArea mais je n'arrive pas a en sortir grand chose

Publié : lun. 25/oct./2004 7:29
par Thyphoon
Quelqu'un sais pourquoi les exemples de Purearea suivant ne fonctionne pas ?
http://www.purearea.net/pb/CodeArchiv/I ... OpenURL.pb
http://www.purearea.net/pb/CodeArchiv/I ... URL_GUI.pb

Merci

Publié : lun. 25/oct./2004 8:16
par Heis Spiter
Le premier marche chez moi, j'obtiens le long code d'une page html (encore faut-il ajouter un "Debug Html$" à la fin ;).
Le second marche aussi chez moi, et sans rien faire...

En clair, le blème vient de chez toi :?

Publié : lun. 25/oct./2004 10:04
par Thyphoon
mmmm peut être un problème de proxy ou de parfeu !! Quelqu'un sais comment se comporte le Purebasic avec les proxys et les parfeus ?

Publié : lun. 25/oct./2004 10:09
par Heis Spiter
N'ayant pas de proxy, je ne peux rien dire, mais avec mon parfeu, tout programme fait en Pure qui veut se connecter doit demander l'autorisation (logique).