[Extension CURL] passage paramètre en POST avec CURL
Bonjour à tous,
J’ai deux pages, A et B.
Depuis la page A, je dois accéder à la page B et récupérer certaines informations contenues dedans et ce en utilisant des requêtes Xpath.
Pour l’accès à la page B, j’utilise l’extension CURL de PHP.
Le problème est que la page B demande des données en POST, et je n’arrive pas à les faire passer.
Aussi, la page B demande une authentification (donc une session active) donc je me dis peut être que c’est un problème de session (la session de A est différente de celle de B) et aussi quand j’affiche le contenu brut que j’ai récupéré de la page B j’ai le message suivant : « Votre session n'est pas active ou a expiré » et ce malgré que je me sois authentifier sur la page B, dans un autre onglet !
PS : la page d’authentification de la page B est différente de la page d’où que je veux récupérer les informations.
Voici le code CURL utilisé :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
public function getHtml($url, $data) {
curl_setopt_array($this->curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CONNECTTIMEOUT => 30,
CURLOPT_USERAGENT => "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Chrome/57.0.29",
CURLOPT_COOKIESESSION => true,
CURLOPT_COOKIEFILE => $this->session,
CURLOPT_COOKIEJAR => $this->session,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $data,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_SSL_VERIFYPEER => false,
)
);
$out = curl_exec($this->curl);
// todo: gestion des erreurs ici
return $out;
}
//exécution:
$data = "codeuti=CRT&hdd_NbElement=0&hdd_ParModif=NO&hdd_Parametre=GEN&ot=1020431753";
$url = "www.mapageB.com";
$html = $simap->getHtml($url,$data); |
Merci pour votre aide