Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1549 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] recupérer le contenu d'une page dans une session

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] recupérer le contenu d'une page dans une session

n°1001701
kayasax
Posté le 05-03-2005 à 12:18:23  profilanswer
 

Bonjour,
je cherche à récupérer le contenu d'une page, qui n'est accessible qu'apres avoir ouvert préalablement une session.
 
voila comment ca marche
1) page d'identification, si identification ok ouverture d'une session  
2) page A = page sur laquelle je suis redirigé après avoir ouvert ma session
3) page B = page sur laquelle se trouve les infos qui m'interessent, ne peut pas être accédée directement (si on a pas ouvert une session)
 
je pense qu'il faut que j'utilise les sockets pour faire communiquer mon script php avec le serv distant mais à part ça je vois pas trop par ou commencer... analyser ce qui passe entre le client et le serveur avec ethereal et essayer de reproduire la communication avec php ??
 
si vous avez des idées ou des tutaux là dessus ça m'interesse
Merci

mood
Publicité
Posté le 05-03-2005 à 12:18:23  profilanswer
 

n°1001735
cerel
Posté le 05-03-2005 à 13:52:33  profilanswer
 

En effet je pense que la meilleure solution serais l'utilisation d'un socket afin "d'imiter" un browser.
 
Donc tu fais un fsockopen sur l'adresse du server et sur le port 80.
Ensuite sur le handle ainsi obtenu tu ecris dedans pour envoyer des requetes, puis tu lis pour savoir ce qui reviens.
 
Il faut que tu te doccumente sur le protocole http ou si tu es plus feignasse, alors analyse les headers envoyes par le navigateur.
 
Je ne sais pas si Ethereal te sera utile. En effet ce dernier examine les packets. Mais dans ton cas tu n'as pas besoin de descendre aussi "bas".  
Le protocole http n'est pas complique, il te suffit juste de savoir qu'elle string envoyer au serveur pour obtenir la page que tu veux.

n°1001736
KangOl
Profil : pointeur
Posté le 05-03-2005 à 13:58:00  profilanswer
 

tu peux egalement utiliser curl...
www.php.net/curl


---------------
Nos estans firs di nosse pitite patreye...
n°1001757
kayasax
Posté le 05-03-2005 à 14:45:12  profilanswer
 

ok je vais voir tout ça merci

n°1003616
kayasax
Posté le 07-03-2005 à 14:43:04  profilanswer
 

j'arrive à avoir la page d'identification, mais lorsque je cherche a envoyer les données de mon form avec post j'obtiens une belle erreur 500 ...
voici mon script, est ce qu'il vous parait ok ?


<?php
$fp = fsockopen("aru", 9090, $errno, $errstr);
if (!$fp) {
   echo "$errstr ($errno)<br />\n";
} else {
   $out = "GET /ARU/index.jsp?application=ARU HTTP/1.1\r\n";
   $out .= "Host: aru\r\n";
   $out.="\r\n";
   
   //envoie des données du form
   $out.="POST /ARU/portals/std/login/exec-login.jsp?login=monlogin&password=monpassword&application=ARU \r\n";
   $out .= "Host: aru\r\n";
   $out.="\r\n";
   
   $out .= "Connection: Close\r\n\r\n";
 
   fwrite($fp, $out);
   while (!feof($fp)) {
       echo fgets($fp, 128);
   }
   fclose($fp);
}
?>  


a l'execution j'obtiens :
HTTP/1.1 200 OK Content-Type: text/html;charset=ISO-8859-1 Set-Cookie: JSESSIONID=DA998EE9D49E86DECCD9DB79DE31FC45; Path=/ Set-Cookie: language=fr; Expires=Thu, 01-Feb-2063 21:11:28 GMT; Path=/ Transfer-Encoding: chunked Date: Mon, 07 Mar 2005 13:34:56 GMT Server: Apache Coyote/1.0 1d6a  
 
 
 
puis  
0  
HTTP Status 500 -  
 
--------------------------------------------------------------------------------
 
type Exception report
 
message  
 
description The server encountered an internal error () that prevented it from fulfilling this request.
 
 
 
Merci encore


Message édité par kayasax le 07-03-2005 à 14:51:51
n°1003702
kayasax
Posté le 07-03-2005 à 15:47:56  profilanswer
 

J'ai quand meme utiliser ethereal pour voir ce qui passait et recoder ma requete de cette façon :
 


   $out="POST /ARU/portals/std/login/exec-login.jsp HTTP/1.1 \r\n";
   
   $out.="Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*\r\n";
$out.="Referer: http://aru:9090/ARU/index.jsp?application=ARU\r\n";
$out.="Accept-Language: fr\r\n";
$out.="Content-Type: application/x-www-form-urlencoded\r\n";
$out.="Accept-Encoding: gzip, deflate\r\n";
$out.="User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Maxthon)\r\n";
$out.="Host: aru:9090\r\n";
$out.="Content-Length: 44\r\n";
$out.="Connection: Keep-Alive\r\n";
$out.="Cache-Control: no-cache\r\n";
$out.="Cookie: language=fr; navigation=rubrics; application=ARU;\r\n"; $out.="JSESSIONID=9270FB3C6B26316E5F963625D2F3D091\r\n";
$out.="\r\n";
$out.="login=monlogin&password=monpassword&application=ARU";
$out .= "Connection: Close\r\n\r\n";


 
mais c'est encore pire j'obtiens : HTTP/1.1 505 Version HTTP Non Supportée  : ???
 

n°1012050
kayasax
Posté le 14-03-2005 à 14:15:32  profilanswer
 

bon y a pas foule....
la création de la requête vous parait elle correcte au moins ? (n'y a t'il pas de taille limite ou autre à respecter ?)  
Merci

n°1012152
rufo
Pas me confondre avec Lycos!
Posté le 14-03-2005 à 15:38:43  profilanswer
 

j'ai peut-être pas compris, mais un simple test à la suite de l'identification et un header(location..) pour la redirection, ça le ferait pas? Et pour la apge accessible seulement si identification ok, ben en début de page, on teste si la session existe...

n°1012168
soju
One shot !
Posté le 14-03-2005 à 15:52:42  profilanswer
 

rufo a écrit :

j'ai peut-être pas compris


je crois aussi  ;)  
 
sinon pour kayasax : j'y connais pas grand chose en protocole http mais t'as testé avec HTTP/1.0 ?

n°1012247
Djebel1
Nul professionnel
Posté le 14-03-2005 à 16:44:19  profilanswer
 

sinon ca marche bien avec wget, en triturant les options


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] recupérer le contenu d'une page dans une session

 

Sujets relatifs
Lancer un programme depuis une page webModifier code d'une page distante en include
session et popuprécupérer le texte dans un menu déroulant
Lecteur média player dans page HTMLMettre en forme de l'html généré par PHP [resolu(tu m'étonnes :p)]
[Conseils]Mise en page contenant plein d'élément gif avec CSS ou HTMLSession Utilisateur
extraction du contenu de balisesfonction javascript pour récupérer une url et son nom
Plus de sujets relatifs à : [PHP] recupérer le contenu d'une page dans une session


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR