Bonjour,
J'ai cherché sur le net, et je n'ai pas beaucoup trouvé d'info au sujet de la fonction curl. Je dois récupérer sur un hébergement un fichier xml. Je tiens a signaler au cas où, cet hébergeur ne permet pas la connexion ftp mais permet uniquement de le faire par curl. ( je résume).
Donc j'ai essayé de faire quelque chose, la connexion se réalise bien , il faut ici un login et pass, et j'essaye de récupérer un xml et le déposer au même endroit que ma page qui exécute le script curl . Pour le moment cela créer bien un fichier xml mais vide.
Primo je n'ai pas bien compris ce qu'était curl déjà, et je ne connais pas bien non plus la fonction fopen...
j'ai vu dans un tuto qu'il fallait créer un cookie, je ne sais pas si c obligatoire.
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
28
29 <?php $lien = 'url'; $postfields = array( 'username' => 'login', 'password' => 'pass', 'login' => '1' ); $path_cookie = 'temp.txt'; if (!file_exists(realpath($path_cookie))) touch($path_cookie); $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $lien); curl_setopt($curl, CURLOPT_COOKIESESSION, true); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $postfields); curl_setopt($curl, CURLOPT_COOKIEJAR, realpath($path_cookie)); $return = curl_exec($curl); $fp = fopen("20130723_export_NL.xml", "w+"); fclose ($fp); curl_close($curl); if (preg_match('#Username and password do not match#i', $return)) { echo 'Connexion échoué.'; exit; }
Si quelqu'un pourrait me dire ce qu'il manque ou l'erreur je suis preneur ?
Merci.
Partager