Mammouth du PHP |
693 Messages
23 mars 2007, 13:30
A ce propos, j'ai un petit problème avec les sessions CURL.
J'aimerais me connecter sur un site via un formulaire POST puis après récupérer différentes pages.
Voici mon script :
//Création de la session
$curlId = curl_init("http://www.lesite.com");
curl_setopt($curlId, CURLOPT_COOKIESESSION, TRUE); //Autorisation d'utiliser les cookies de sessions
curl_setopt($curlId,CURLOPT_COOKIEJAR, "cookie.txt"); // Stockage des cookies dans cookies.txt
curl_setopt($curlId, CURLOPT_RETURNTRANSFER, 1); //Un retour du transfert
//Envoie du POST
curl_setopt($curlId, CURLOPT_POST, TRUE); //On prépare le POST
$post = "login=XXX&password=XXX";
curl_setopt($curlId, CURLOPT_POSTFIELDS, $post); //On envoie le POST
curl_exec($curlId); //On exécute la sessuin
curl_close($curlId);
$curlId = curl_init("http://www.lesite.com/page.php");
//On va sur la page où il y a les données
curl_setopt($curlId,CURLOPT_COOKIEFILE, "cookie.txt"); // Indique le lieu des cookies
//On execute la session que l'on met dans un variable
$contenu = curl_exec($curlId);
//On Ferme la session
curl_close($curlId);
print($contenu);
Quand j'execute le script, il y a bien un cookie inscrit dans cookie.txt, mais la deuxième session Curl renvoie la page quand on est déconnecté.
Et je ne vois pas comment tester si le cookie inscrit dans cookie.txt corespnd à une session valide...