Page 1 sur 1

2 appels à des url avec problème de jetons

Posté : 09 mai 2009, 19:46
par blubsy
Bonsoir,
après 2 jours de recherche et de tests dans tous les sens je suis totalement bloqué.
Je lance donc un gros HELP en espérant que quelqu'un puisse me donner une idée sur le système à mettre en place.

Je doit mettre en place un enregistrement de donnée provenant d'un système sécurisé (logmein).
Mais voilà pour afficher le rapport je doit avant tous appeler une url comportant le login et le passe, puis appeler une seconde url appelant le rapport.

Lorsque je le fait manuellement dans mon navigateur tous marche.
Mais si je le fait par appel des url dans une page php (fonction join ou même fopen) rien y fait.
La première url me renvois bien OK pour me dire que je suis bien connecté mais la seconde url m'indique que je ne suis plus connecté.

J'ai un peu tout éssayé dans tous les sens mais la je suis totalement bloqué et pourtant j'ai vraiment besoin de trouvé une solution.


Si quelqu'un à une idée je suis preneur et je vous en remerci par avance.

PS : pour info je laisse la page d'explication de logmein pro :
https://secure.logmeinrescue.com/API/

et mon code test :

Code : Tout sélectionner

$url = 'https://secure.logmeinrescue.com/API/[email protected]&pwd=MDP'; $fp = fopen($url,"r"); //lecture du fichier while (!feof($fp)) { //on parcoure toutes les lignes $page .= fgets($fp, 4096); // lecture du contenu de la ligne } echo "1 : $page"; $url1 = 'https://secure.logmeinrescue.com/api/getReport.aspx?node=1111111'; $fp = fopen($url1,"r"); //lecture du fichier while (!feof($fp)) { //on parcoure toutes les lignes $page .= fgets($fp, 4096); // lecture du contenu de la ligne } echo "2 : $page <hr />"; $uu = join( '', file($url) ) ;print "1 : ".$uu."<br />"; $uu = join( '', file($url1) ) ;print "2 : ".$uu;
Résultat :

Code : Tout sélectionner

1 : OK 2 : OK NOTLOGGEDIN -------------------------------------------------------------------------------- 1 : OK 2 : NOTLOGGEDIN

Posté : 12 mai 2009, 13:04
par nicolas
Il te manque le cookie. Non ?
Essaie de faire tout ça avec curl : http://php.net/curl

Posté : 21 mai 2009, 11:01
par enneite
oui soit tu utilises cURL comme le disais blusby, soit tu utilise des sockets reseaux!
Cela revient au même.
l'avantge de cURL, c'est que tu n'as pas à ecrire à la main ton entete http complete, le nom de l'url suffit.
Par contre, il faut installer cURL et reconfigurer php.ini, voir apache, alors que normalement fsocketopen() et les autres fonctions utilies pr les sockets... fait partie des fonctions usuelles de la plupart des packages php (enfin je crois).

Mais tu ne peux pas y arriver avec les fichiers car tu ne telechargera que le corps du document, pas l'entete http, ou sont definis les authentifications, la methode GET/POST...