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