[Socket] Les débuts c'est pas rose...
Bonjour !
J'aimerais pouvoir me connecter à partir de mon site chez moi par l'intermédiaire de no-ip afin de récupérer des informations. Je dois donc pour cela créer une socket qui me permette de lire le résultat d'une requete HTTP vers mon serveur local.
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
<?
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_bind($socket,"infoworld.no-ip.org");
socket_connect($socket, gethostbyname('infoworld.no-ip.org'),getservbyname('www','tcp'));
socket_write($socket,"GET / HTTP/1.1\r\n\r\nHost: http://infoworld.no-ip.org\r\n\r\n");
while ($ligne=socket_read($socket,4096,PHP_NORMAL_READ))
{
echo "\"$ligne\"<br>";
if (ereg('title',$ligne))
{
$played = ereg_replace(".*title=([^ ]).*","\\1",$ligne);
}
}
socket_close($socket);
?> |
Donc deja là il y a deux problèmes :
- le résultat des echo $ligne me renvoit un HTTP BAD REQUEST.
- le while au lieu de se terminer proprement me donne une erreur php qui me dit que la connexion est close.
Voici le retour généré, parce qu'un exemple vaut 1000 explications :
Code:
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
|
"HTTP/1.1 400 Bad Request "
" "
"Date: Mon, 15 May 2006 21:08:52 GMT "
" "
"Server: Apache "
" "
"Content-Length: 285 "
" "
"Connection: close "
" "
"Content-Type: text/html; charset=iso-8859-1 "
" "
" "
" "
" "
" "
" "
" "
"Bad Request
"
"Your browser sent a request that this server could not understand.
"
"
"
" "
"Apache Server at infoworld Port 80 "
""
Warning: socket_read() unable to read from socket [104]: Connection reset by peer in /var/www/localhost/htdocs/lapsus/fluxInfo.php on line 9
|
Si vous pouviez m'éclairer ça serait super sympa :-)
Merci infiniment