1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
<?php
//Temps maximum d'exécution de la page <gras><couleur nom="rouge">nul</couleur></gras>
set_time_limit(0);
//Coordonnées du serveur == le pc qui lancera cette page
$port = 5502;
$adresse = "localhost";
//On crée la socket
$socket = socket_create(AF_INET, SOCK_STREAM, 0);
if(($socket) === false)
echo 'La création de la socket a échoué : '.socket_strerror($socket)."\n<br />";
//On assigne la socket à une adresse et à un port, que l`on va écouter par la suite
$assignation = socket_bind($socket, $adresse, $port);
if($assignation < 0)
echo "L'assignation de la socket a échoué : ".socket_strerror($assignation)."\n<br />";
//On prépare l`écoute
$ecoute = socket_listen($socket);
if(($ecoute) === false)
echo "L'écoute de la socket a échoué : "; //.socket_strerror($ecoute)."\n<br />";
//Le code se bloque jusqu`à ce qu'une nouvelle connexion client soit établie
$client = socket_accept($socket);
if(($client) === false)
echo "Le client n'a pas pu se connecter : "; //.socket_strerror($client)."\n<br />";
//Lors d'une connexion, le code reprend ici, il est temps de lire ce qu'on nous envoie
if(($reception = socket_read($client , 255)) === false)
echo "La socket n'a pas pu être lue : ".socket_strerror($reception)."\n<br />";
elseif( $reception == 'plop' )
$reponse = "J'aime les plop";
else
$reponse = "J'aime pas les ".$reception;
//Si ça ne marche pas, c'est qu`il est déconnecté
if(( socket_write($client, $reponse, strlen($reponse)) ) === false)
echo "Client déconnecté\n<br />";
else
echo "Message envoyé : ".$reponse;
//Fermeture de la socket du client
socket_close($client);
//Fermeture du serveur
socket_close($socket);
?> |
Partager