Newsgroup: it.comp.www.php
Titolo: cookie+fsockopen

ciao a tutti,
ormai stremato provo a chiedervi aiuto.
in qualche modo devo mandare una richiesta ad un server attraverso
fsockopen,
ho trovato iehhttpheaders per vedere come vengono scambiati i dati tra
client-server.
intanto..
gironzolando in rete e su 
php.net
 l'header da mandare al server nel
caso di richiesta GET:
$p="GET
/results?sf=a&CY=ep&LG=en&DB=EPODOC&TI=mouse+and+trap&PGS=30&FIRST=1
HTTP/1.0\r\n";
$p.="host: 
v3.espacenet.com
\r\n";
$p.="Content-type: application/x-www-form-urlencoded\r\n";
$p.="Content-length: $len\r\n";
$p.="User-Agent: MSIE\r\n";
$p.="Connection: Keep-Alive\r\n\r\n";
con iehttpheaders per una richiesta identica ma fatta direttamente dal
browser al sito ho questo:
GET
/results?sf=a&CY=ep&LG=en&DB=EPODOC&TI=mouse+and+trap&AB=&PN=&AP=&PR=&PD=&PA=&IN=&EC=&IC=&=&=&=&=&=&PGS=10&FIRST=1
HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/x-shockwave-flash, application/vnd.ms-excel,
application/vnd.ms-powerpoint, application/msword, */*
Referer:
http://v3.espacenet.com/results?sf=a&CY=ep&LG=en&DB=EPODOC&TI=mouse+and+trap&AB=&PN=&AP=&PR=&PD=&PA=&IN=&EC=&IC=&=&=&=&=&=&PGS=10&FIRST=11
Accept-Language: it
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;
FunWebProducts-MyWay; SV1; .NET CLR 1.1.4322; .NET CLR 1.0.3705)
Host: 
v3.espacenet.com
Connection: Keep-Alive
Cookie: JSESSIONID=0000EBdkSVjBEVznPN0goUbF6IP:10nfga8s9;
refine=http%3A//
v3.espacenet.com/results%3FDB%3DEPODOC%26sf%3Da%26FIRST%3D1%26CY%3Dep%26LG%3Den%26TI%3Dmouse%2520and%2520trap%26AB%3D%26PN%3D%26AP%3D%26PR%3D%26PD%3D%26PA%3D%26IN%3D%26EC%3D%26IC%3D%26%3D%26%3D%26%3D%26%3D%26%3D
;
menuCurrentSearch=http%3A//
v3.espacenet.com/results%3Fsf%3Da%26CY%3Dep%26LG%3Den%26DB%3DEPODOC%26TI%3Dmouse+and+trap%26AB%3D%26PN%3D%26AP%3D%26PR%3D%26PD%3D%26PA%3D%26IN%3D%26EC%3D%26IC%3D%26%3D%26%3D%26%3D%26%3D%26%3D%26PGS%3D10%26FIRST%3D11
le differenze si vedono ad occhio, ma tutti questi dati sono
fondamentali ?(escludendo il cookie) e mi sembra che non ci sia nessun
riferimento (nel caso di iehttpheaders) a:
$p.="Content-length: $len\r\n";
sapete il perche'?
..poi dovrei passare i dati del cookie, che vengono passati in questo
modo:
HTTP/1.1 200 OK
Date: Sun, 16 Oct 2005 21:07:11 GMT
Server: IBM_HTTP_Server/2.0.47.1-PQ94086 Apache/2.0.47 (Unix)
Set-Cookie: JSESSIONID=0000EBdkSVjBEVznPN0goUbF6IP:10nfga8s9;Path=/
Cache-Control: no-cache="set-cookie,set-cookie2"
Expires: Thu, 01 Dec 1994 16:00:00 GMT
Keep-Alive: timeout=15, max=500
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1
Content-Language: en-US
ma questo in un altro post.
'notte
cap

 sapete il perche'?
Perche' il Content-Legth si usa solo nelle richieste che hanno un
contenuto (es. le POST).
-- 
I am what I am, I do what I can
Sei un newbie? Leggi questo 
http://url.repository.biz/go/3C
Vuoi supportarmi? 
http://url.repository.biz/go/3E
Do. Or do not. There is not try.

contenuto (es. le POST).
ma anche la GET ha un contenuto?
nel mio caso non e' la stringa &sf=a&FIRST=1.... ?

cappa wrote:

No, la GET non ha contenuto, se non ci credi leggiti l'RFC sull'HTTP
-- 
I am what I am, I do what I can


>No, la GET non ha contenuto, se non ci credi leggiti l'RFC sull'HTTP
ciao setec, ho letto e nel frattempo (stamattina)ho fatto delle prove
con iehttpheaders e ho verificato che solo le richieste POST hanno il
content lenght.
adesso sto facendo delle altre prove e forse mi puoi aiutare.
sempre con fsockopen, devo aprire in sequenza piu' di una pagina sullo
stesso server(nel mio esempio 2):
1)se tengo la connessione aperta, al primo fputs(1a richiesta) riesco
ad avere tutte le info della pagina
2)al 2° fputs (2a richiesta) torna una stringa vuota.
se provo a chiudere e a riaprire la connessione mi va in timeout.
per ora e' tutto.
a dopo.
cap