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 : 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);
Merci pour votre aide