From fe42562c4398d99d77b46c101654163702f13d2b Mon Sep 17 00:00:00 2001 From: nathan boileau Date: Fri, 6 Jan 2023 14:26:39 +0100 Subject: [PATCH] test --- WEB/Client/Client.php | 10 ++++------ WEB/Config/Config.php | 2 +- WEB/server.php | 14 +++++++++++--- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/WEB/Client/Client.php b/WEB/Client/Client.php index 7af2255c..16d83e46 100644 --- a/WEB/Client/Client.php +++ b/WEB/Client/Client.php @@ -11,20 +11,18 @@ class Client{ } public function Queuing(){ - global $port,$serverAdress,$rep,$vues; + global $port,$serverAdress,$rep,$vues, $BUFFER_SIZE; $userModel = new UserModel(); // pas d'arrêt d'éxécution du script (No timeout) set_time_limit(0); - $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("la socket n'a pas pu être créée ERROR : ".socket_strerror(socket_last_error())."\n"); - // Attacher la socket à unde adresse ip et un port - socket_bind($socket, '172.21.92.169', 4000) or die("la socket n'a pas pu être attachée à l'adresse ip et au port ERROR : ".socket_strerror(socket_last_error())."\n"); + $socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("la socket n'a pas pu être créée ERROR : ".socket_strerror(socket_last_error())."\n"); // connecter la socket à l'adresse ip et au port du serveur $result = socket_connect($socket, $serverAdress, $port) or die("Impossible de se connecter au serveur ERROR : ".socket_strerror(socket_last_error())."\n"); $request="Queuing"; + socket_write($socket,$request,strlen($request)); $response=""; while(strcmp($response,"launchGame")!=0){ - echo "test"; - $response=socket_read($socket,1024); + $response=socket_read($socket, $BUFFER_SIZE); if($response!=false) { if(strcmp($response,"refreshQueue")==0) diff --git a/WEB/Config/Config.php b/WEB/Config/Config.php index 16b464fd..968e7f63 100644 --- a/WEB/Config/Config.php +++ b/WEB/Config/Config.php @@ -34,7 +34,7 @@ $vues['queue'] = 'View/src/pages/Multijoueur/Queue.php'; // Enigme $vues['enigmePage'] = 'View/src/pages/Enigme/EnigmePage.php'; // Server -$server = './server.js'; +$BUFFER_SIZE = 1024; $serverAdress = "82.165.180.114"; $port= "3000"; $playerNumberPerGame=2; diff --git a/WEB/server.php b/WEB/server.php index 806cecf4..7449670a 100644 --- a/WEB/server.php +++ b/WEB/server.php @@ -9,6 +9,9 @@ global $serverAdress,$port,$playerNumberPerGame; set_time_limit(0); +// pas de tamponisation de sortie (No output buffering) +ob_implicit_flush(); + // Créer une socket d'écoute $socket = socket_create(AF_INET, SOCK_STREAM,0) or die("la socket n'a pas pu être crée ERROR : ".socket_strerror(socket_last_error())."\n"); @@ -39,13 +42,17 @@ $request=''; while(true) { // Commencer à écouter sur le port - $result = socket_listen($socket) or die ("N'a pas pu configurer l'écoute sur la socket ERROR : ".socket_strerror(socket_last_error())."\n"); + $result = socket_listen($socket, 10) or die ("N'a pas pu configurer l'écoute sur la socket ERROR : ".socket_strerror(socket_last_error())."\n"); //Si c'est une connection entrante, on la rajoute à la liste des sockets à surveiller if(in_array($socket,$read)) { // Accepter la connection entrante - $client = socket_accept($socket) or die("N'a pas pu accepter la connection entrante ERROR : ".socket_strerror(socket_last_error())."\n"); + if($client = socket_accept($socket) === false) + { + echo "N'a pas pu accepter la connection entrante ERROR : ".socket_strerror(socket_last_error())."\n"; + break; + } // Ajouter la socket du client à la liste des sockets à surveiller $read[]=$client; } @@ -56,7 +63,7 @@ while(true) { //Sinon, envoie un message d'erreur au client if(in_array($client,$read)) { - $request=socket_read($client,1024); + $request=socket_read($client,$BUFFER_SIZE); if($request!=false) { $requestHandler = new RequestHandler($request); @@ -67,6 +74,7 @@ while(true) { else { $response="Invalid request"; + // socket_write($client,$response,strlen($response)); } } }