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é :
Merci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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);
Partager