[PHP]Envoi de requête GET

Bonjour,
Je souhaite envoyer une requete GET à une page, via une socket, mais je n'arrive pas a placer correctement les \r et les \r.
Quelqu'un pourrait-il m'aider?

Merci d'avance ;)

Requete:
GET /xxxxx?user=xxxx HTTP/1.1
Host: www.unsite.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.1;MEGAUPLOAD 1.0
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-2,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: __utma=112586503.2170444303783039200.1235772892.1235874605.1235902773.13; __utmz=112586503.1235902773.13.7.utmcsr=unsite.com|utmccn=(referral)|utmcmd=referral|utmcct=/connect.php
Configuration: Windows XP
Firefox 3.0.1

4 réponses

  1. Non en fait c'est pas ca mon problème :)

    $envoi = "HEAD / HTTP/1.0\r\n\r\n";
    $envoi .= "Host: www.siteduzero.com\r\n";
    $envoi .= "Connection: Close\r\n\r\n";
    $reception = '';

    Il y a des \r et des \n, mais moi je veux faire pareil avec la requete GET en haut, mais je ne sais pas ou et combien en placer a chaque ligne
    1. Je dis ça comme ça en freestyle mais le problème vient peut-être de la longueur du nom du cookie.

      Sinon je vois pas.
      1. <?php
        error_reporting(E_ALL);

        echo "<h2>Connexion TCP/IP</h2><br />";

        /* Lit le port du service WWW. */
        $service_port = getservbyname('www' , 'tcp');

        /* Lit l'adresse IP du serveur de destination */
        $adresse = gethostbyname('www.unsite.com');

        /* Crée une socket TCP/IP. */
        $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
        if ($socket < 0)
        echo "socket_create() a échoué : raison : " . socket_strerror ($socket) . "<br />";
        else
        echo "OK.<br />";

        echo "Essai de connexion à $adresse sur le port '$service_port'...";
        $resultat = socket_connect($socket, $adresse, $service_port);
        if ($resultat < 0)
        echo "socket_connect() a échoué : raison : ($result) " . socket_strerror($result) . "<br />";
        else
        echo "OK.<br />";

        $envoi = "MA REQUETE";

        echo "Envoi de la requête HTTP GET...";
        socket_write($socket, $envoi, strlen($envoi));
        echo "OK.<br />";

        echo "Lire la réponse : <br /><br />";
        while ($reception = socket_read($socket, 2048))
        echo $reception;

        echo "Fermeture de la socket...";
        socket_close($socket);
        echo "OK.<br /><br />";
        ?>

        Lors dela formulation de la requete GET (voir mon premier post), je ne sais pas ou placer les \n et les \r