[PHP]Envoi de requête GET

Fermé
noobiz Messages postés 616 Date d'inscription lundi 1 octobre 2007 Statut Membre Dernière intervention 2 juillet 2009 - 1 mars 2009 à 12:55
noobiz Messages postés 616 Date d'inscription lundi 1 octobre 2007 Statut Membre Dernière intervention 2 juillet 2009 - 1 mars 2009 à 13:44
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
A voir également:

4 réponses

doctormad Messages postés 430 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 avril 2015 99
1 mars 2009 à 13:19
Salut,

Si tu donnes le code ça peut aider :)
0
noobiz Messages postés 616 Date d'inscription lundi 1 octobre 2007 Statut Membre Dernière intervention 2 juillet 2009 26
1 mars 2009 à 13:39
<?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
0
doctormad Messages postés 430 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 avril 2015 99
1 mars 2009 à 13:42
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.
0
noobiz Messages postés 616 Date d'inscription lundi 1 octobre 2007 Statut Membre Dernière intervention 2 juillet 2009 26
1 mars 2009 à 13:44
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
0