[PHP] Récupérer session Curl

Récupérer session Curl [PHP] - PHP - Programmation

Marsh Posté le 21-08-2007 à 09:30:48    

Bonjour
Dans une page php j'initialise une session curl afin de réaliser une requête POST. Je ne ferme pas cette session
car je souhaite la réutiliser dans une autre page php.
Pour cela je place l'id de la session dans un fichier temporaire que j'ouvre dans la deuxième page pour extraire l'id.
Problème : lorsque j'exécute la deuxième page il n'a pas l'air de reconnaître l'id de la session curl ouverte sur la première page puisque j'ai des gros messages d'erreurs en retour.
Peut on le faire cette manière ? Est-ce possible?
 
 
première page ---------
$ch = curl_init();
 curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6" );
 curl_setopt($ch, CURLOPT_ENCODING, "gzip,deflate" );
 curl_setopt($ch, CURLOPT_REFERER,"http://monsite/login.aspx" );
 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);  
 curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
 curl_setopt($ch, CURLOPT_COOKIEJAR, "C:/wamp/www/cookie1.txt" );
 curl_setopt($ch, CURLOPT_COOKIEFILE, "C:/wamp/www/cookie1.txt" );
 curl_setopt($ch, CURLOPT_HEADER, 1);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  
 curl_setopt($ch, CURLOPT_POST, 1); //On prépare le POST
 curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
 curl_setopt($ch, CURLOPT_URL, "http://monsite/login.aspx" );  
 $result = curl_exec($ch);
 
 $fcurl = fopen("curlid","w" );
 fputs($fcurl, $ch); // on écrit l'id de la session curl dans le fichier curlid
 fclose($fcurl);
 
deuxième page----------
//extraire l'id de la session curl
$fcurl = fopen("curlid","r" );
$ch = fgets($fcurl, 50);
 
   curl_setopt($ch, CURLOPT_URL, $link );
    curl_setopt($ch, CURLOPT_HEADER, 1);
   curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6" );
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
 //curl_setopt($ch, CURLOPT_COOKIE 'cookie1.txt');
 curl_setopt($ch, CURLOPT_COOKIEJAR, 'C:/wamp/www/cookie1.txt');
 curl_setopt($ch, CURLOPT_COOKIEFILE, 'C:/wamp/www/cookie1.txt');
 //curl_setopt ($ch, CURLOPT_GET, 1);
 curl_setopt ($ch, CURLOPT_HEADER, 0);
 curl_setopt ($ch, CURLOPT_FILE, $fp);
 $result = curl_exec ($ch);


Message édité par dced le 21-08-2007 à 14:21:59
Reply

Marsh Posté le 21-08-2007 à 09:30:48   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed