m_inputs = $inputs; // $this->m_outputs = new Threaded(); // we will store the results in here. } public function run() { 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, 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_set_block($socket); if ($result === false) { echo "socket_set_block a échoué : " . socket_strerror(socket_last_error()) . "\n"; } else { echo "socket_set_block a réussi.\n"; } $result = socket_connect($socket, $serverAdress, $port) or die("Impossible de se connecter au serveur ERROR : " . socket_strerror(socket_last_error()) . "\n"); if ($result === false) { // La connexion de la socket à l'adresse et au port a échoué echo "socket_connect a échoué : " . socket_strerror(socket_last_error()) . "\n"; } else { echo "socket_connect a réussi.\n"; $request = "Queuing"; $result = socket_write($socket, $request, strlen($request)); if ($result === false) { echo "socket_write a échoué : " . socket_strerror(socket_last_error()) . "\n"; } else { echo "socket_write a réussi.\n"; } $response = ""; while (strcmp($response, "launchGame") != 0) { $response = socket_read($socket, $BUFFER_SIZE); echo $response; if ($response != false) { echo "socket_read a réussi.\n"; if (strcmp($response, "refreshQueue") == 0) { $userGroup = $userModel->findUsersInQueue(); $numberOfPlayer = count($userGroup); header('Location : ' . $rep . $vues['queue']); } } else { echo "socket_read a échoué : " . socket_strerror(socket_last_error()) . "\n"; break; } } } } # Accessors public function getResults() { return $this->m_outputs; } }