Newsgroup: it.comp.www.php
Titolo: login tramite socket ad un sito.

Salve a tutti.
Ho la pagina seguente pagina "login.htm"
<form method="post" action="
http://www.ilsito.it/pagina_di_login.x
">
<input type="text" name="user" value="mioUser">
<input type="text" name="passwd" value="miaPswd">
<input type="submit" value="login" />
</form>
Se lo faccio tramite browser (FF1.0) tutto funziona ad hoc e vado nel
sito e sono loggato!
Ho creato un (banale!!!) programma in VB, ho impostato il proxy del
browser alla porta di "ascolto" e ho catturato la richiesta "HTTP"
Apro quindi un socket verso 
www.ilsito.it
$socket = fsockopen('
www.ilsito.it
', 80, $errno, $errstr);
Invio la richiesta HTTP precedentemente catturata
fputs($socket, $header); 
E ritorno quanto mi restituisce il socket.
while (!feof($socket)) $result[] = fgets($socket, 4096); 
fclose($socket);
for($i = 0; $i< count($result); $i++) $opt = $opt . $result[$i]; 
return $opt;
Stampando a video $opt scopro che si è verificato un errore durante il
login e mi suggerisce di riprovare in seguito.
Ho quindi utilizzato un altro programma sempre VB come proxy server. Con
FF1.0 navigo senza problemi su repubblica ad esempio. Mentre se provo a
loggarmi su 
www.ilsito.it
 non ci riesco.
Mi domando quindi. Dove sbaglio? Cosa non fa il socket rispetto al
browser? Cosa posso fare? Spero di essere stato sufficientemente chiaro!
Weigand
P.S Basta anche un'imbeccata.
Ho letto molto dei post trascorsi, e grazie ai vari Setec, LAMASE,
Leonardo sono riuscito passo passo ad andare sempre un pezzetto più
avanti. Ma ora chiedo una mano :)
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 login e mi suggerisce di riprovare in seguito.
Di quale sito si tratta? 
Quali header invii?
Perche non provi con cURL?
-- 
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.

 Perche non provi con cURL?
Non conosco. Ho già attivato Google per saperne di più. GRAZIE.
Weigand


 Il sito 
190.it
Per fare il login su 
190.it
 devi supportare i cookie, utilizza cURL
altrimenti devi implementarti a mano un parser per i cookie.


 altrimenti devi implementarti a mano un parser per i cookie.
Per quanto riguarda i cookie:
ho notato che 
190.it
 utilizza i cookie. 
Non sapendo nulla di cookie ho iniziato a documentarmi leggendo post 
passati. Ho quindi letto (confesso, solo per grandi linee :| ) 
l'RFC consigliati. 
Sono riuscito a "recuperare" i cookie che il sito 190 mi passa, tramite
parser. NON sono riusciti a salvarli sul mio PC. 
Leggendo l'RFC (e l'HTTP request rubato) ho visto anche come vengono 
mandati i cookie. Ma nonostante ciň non riesco a fare il login.


 tramite parser. NON sono riusciti a salvarli sul mio PC. 
Non devi salvarli, devi inserirli nelle richieste HTTP successive
sottoforma di header.


Fatto :) ma non va...
Uhm... meco mi sorge un dubbio... Non vorrei aver fatto confusione tra 
cookie e cookie (chissà se mi sono spiegato) e quindi per questo mi dice
che c'è stato un problema e di riprovare in seguito...
Beh, fino a stanotte non saprò la risposta.
In ogni modo ti ringrazio per la puntualità delle risposte.
Poi, se mi sono incaponito nel voler fare questa cosa è solo dopo aver
visto il tuo sito (si chiama citazione, non plagio ^_^).
Beh, grazie a questo sto imparando cose che prima non immaginavo...
...e ora ho questo cURL da scoprire...


 sottoforma di header.
Fatto :) ma non va...
Uhm... meco mi sorge un dubbio... Non vorrei aver fatto confusione tra 
cookie e cookie (chissà se mi sono spiegato) e quindi per questo mi dice
che c'è stato un problema e di riprovare in seguito...
Beh, fino a stanotte non saprò la risposta.
In ogni modo ti ringrazio per la puntualità delle risposte.
Poi, se mi sono incaponito nel voler fare questa cosa è solo dopo aver
visto il tuo sito (si chiama citazione, non plagio ^_^).
Beh, grazie a questo sto imparando cose che prima non immaginavo...
...e ora ho questo cURL da scoprire...
Weigand


 ...e ora ho questo cURL da scoprire...
Avevo messo un tutor (non ho avuto il tempo di completarlo, sniffff)
http://php.dopoil.com/tutor.php?secureSSLConnection
C'e' anche l'autenticazione, devi solo mettere i valori:
   $server_auth_user = "";
   $server_auth_pass = "";
per i cookie aggiungi una riga tipo:
  curl_setopt($ch, CURLOPT_COOKIEFILE, "tuocookie.cookie");
N.B.: il processo che chiama lo script deve avere i diritti di
scrivere/leggere quel cookie file.