You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Scripted/WEB/Client/Client.php

63 lines
2.7 KiB

<?php
class Client
{
private static $instance;
private $socket;
public static function getInstance()
{
if (self::$instance === null) {
self::$instance = new self();
}
return self::$instance;
}
public function Queuing()
{
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()) . "(Client : Queuing) \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()) . " (Client : Queuing)\n";
} else {
echo "socket_set_block a réussi. (Client : Queuing) \n";
}
$result = socket_connect($socket, $serverAdress, $port) or die("Impossible de se connecter au serveur ERROR : " . socket_strerror(socket_last_error()) . "(Client : Queuing) \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()) . "(Client : Queuing)\n";
} else {
echo "socket_connect a réussi. (Client : Queuing)\n";
$request = "Queuing";
$result = socket_write($socket, $request, strlen($request));
if ($result === false) {
echo "socket_write a échoué : " . socket_strerror(socket_last_error()) . " (Client : Queuing)\n";
} else {
echo "socket_write a réussi.(Client : Queuing)\n";
}
$response = "AAA";
// $response = socket_read($socket, $BUFFER_SIZE);
echo $response;
// while (strcmp($response, "launchGame") != 0) {
// $response = socket_read($socket, $BUFFER_SIZE);
// 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['main']);
// break;
// }
// } else {
// echo "socket_read a échoué : " . socket_strerror(socket_last_error()) . "\n";
// break;
// }
// }
}
}
}