Vous trouverez ci-dessous le code Pure Basic ainsi que le script simplifié se trouvant sur le serveur.
Le serveur est un hébergement mutualisé chez 1and1.
Code : Tout sélectionner
;Se connecter et envoyer des données à un serveur (Apache, Php)
If InitNetwork()
HostConnection.i=0 ;je suis connecté ou pas
HostName.s = "s242132022.onlinehome.fr";Adresse du serveur
HostPort.i = 80 ;port
HostFolder.s="/racal/" ;dossier ou se trouve les scripts php
HostUrl.s="" ;Url qui permettra d'envoyer les données
Buffer.s="" ;Récupération du resultat de la soumission de l'url
;Pour notre test, on va demander à un script de calculer une surface
;et de nous renvoyer le resultat
Largeur.s = "5"
Longueur.s = "10"
;On se connecte
HostConnection = OpenNetworkConnection(HostName, HostPort, #PB_Network_TCP)
;Suis je connecté ?
If HostConnection
Debug "J'aime ça quand ça marche !"
;Formatage de l'url
;Methode Post
HostUrl = "POST "
;Script à lancer sur le serveur (? indique que le script attend des données)
HostUrl + HostFolder + "jaime.php?"
;Donnée à envoyer
HostUrl + "&largeur=" + URLEncoder(largeur) ;Envoi de la variable largeur
HostUrl + "&longueur=" + URLEncoder(longueur) ;Envoi de la variable longueur
;Fin du formatage
HostUrl + " HTTP/1.0" + #CRLF$
HostUrl + "Host: " + HostName + #CRLF$ + #CRLF$
Debug hosturl
;Envoie de l'url
If SendNetworkString(HostConnection, HostUrl)
Delay(200)
*buffer = AllocateMemory(65535)
dwBytes = 1
While dwBytes > 0
dwBytes = ReceiveNetworkData(HostConnection, *buffer, 65535)
Wend
Else
Debug "Erreur lors de l'envoi des données !!!"
EndIf
;fermeture de la connexion
CloseNetworkConnection(HostConnection)
;Affichage du résultat
Buffer=PeekS(*buffer)
Debug buffer
;Regardez les 2 derniéres lignes
For i=1 To CountString(Buffer, Chr(13)) + 1
Debug StringField(Buffer, i, Chr(13))
Next
;Libère la zone mémoire
FreeMemory(*Buffer)
Else
;Connexsion impossible
Debug "Connexion impossible"
EndIf
;Fin initnextwork
EndIf
Code : Tout sélectionner
<?php
//Reception des données
$longueur = urldecode($_GET['longueur']);
$largeur = urldecode($_GET['largeur']);
//Envoi du résultat
echo "moi aussi j'aime quand ça marche".chr(13);
echo "La surface calculée est de : ".$largeur*$longueur;
?>