Page 1 sur 1

Fonction CURL

Posté : 09 mai 2005, 13:55
par steph
Bonjour,
Concretement a quoi servent les fonctions CURL (curl_setopt, curl_exec, curl_close) ?

Merci d'avance pour vos reponses

Posté : 09 mai 2005, 14:03
par seayoung
curl est une super fonction enfin tout dépend ce que tu veux faire.
Concrètement imaginons que tu as deux serveurs et que tu veux envoyer les donner d'un serveur un a un serveur deux CURL est ce qu il te faut .
en gros il s'agit d'une methode d'automatisation des processus WEB.
Si tu pouvais détailler un pe ce que tu veux je pourais t aider ( car j ai eu a faire ce genre de chose) qui je l avou au débu je ne voyais pas l avantage et maintenant j en vois vraiment l'intéret.
Relativement simple d'enploi .
fais un tour sur cette url:
http://www.univ-st-etienne.fr/criter/g ... #ref.curl
tu y trouveras plein d'information

Posté : 09 mai 2005, 14:04
par zeus
Je savais même pas que ça existait !!!!

En cherchant 10s, j'ai trouv" un tuto qui explique ce qu'est que le CURL et les principales fonctions qui sont associées

http://www.manuelphp.com/php/curl.intro.php

Posté : 09 mai 2005, 14:10
par seayoung
je connaissais aussi ce site mais l url que j ai mise je trouvais les explication un pe plus clair.
toutefois j'admet que cette méthode est pas tres connu pourtant bien pratique.
c'est une amélioration des fonction php fopen() et fsockopen().
Cependant cette méthode pause un problème si le serveur php n'a pas l'extention cURL d'activée.

Posté : 09 mai 2005, 14:12
par zeus
Cool, je viens d'apprendre un truc bien interressant !!!

Ca risque de m'interesser grave vu que mon entreprises disposent de ses serveurs !!! Je vais me pencher sur ton tuto !!!

Merci du tuyau !!

Posté : 09 mai 2005, 14:44
par seayoung
pas de p
dis moi sur koi tu travail car j ai eu a m en oqp aussi pour la boite ou je bosse.
donc si je peux t aider ca ser avec plaisir

Posté : 09 mai 2005, 14:49
par zeus
Alors attention, c'est du 100% pointe de la technologie :

Windows 2000 avec EasyPHP 1.7 !!! Si si, c'est un serveur !!!!

Mais je pense que je vais leur faire comprendre que Linux va devenir obligatoire parce qu'ils veulent que je mette en place le protocole HTTPS avec le mod SSL et c'est trop la galère sous Windows (tout particulièrement sous EasyPHP 1.7 et ils veulent pas de la 1.8)

Posté : 20 juin 2005, 11:07
par chips
Bonjour tout le monde,

Je suis un petit nouveau. Je me présente vite fait. Je suis étudiant en info, en licence pro ATII sur st-étienne et j'ai eu l'an dernier mon bts info de gestion option developpeur.

Aujourd'hui, pour terminer cette année de licence pro, je fais un stage de 3 mois dans une boite d'info.

Comme projet je dois mettre en place un CRM (vTiger) et l'adapter aux besoins de ma boite afin de mettre en place des mises à jour automatiques entre les différents serveurs deja présents et le CRM.

Pour l'instant, il faut que je crée une moulinette qui, tous les soirs, exporte une liste de clients.
Pour ca, j'ai créé une page qui génère un flux xml. Maintenant, j'aimerai utiliser ce flux(qui s'affiche à l'écran) afin d'insérer certains éléments dans une base de données Mysql.

On m'a conseillé d'utiliser la bibliothèque cURL alors voila ce que j'ai fait jusqu'à présent.

Je crée un fichier temporaire dans lequel je stocke un flux xml que j'aimerai ensuite exploiter. Le problème c'est que je n'arrive pas récupérer les informations que je veux. (Je ne récupère rien en fait.)

J'ai créé une fonction que j'appelle ensuite:

Code : Tout sélectionner

function recup_clients_mobimel() { // adresse du serveur et de la page d'envoi $url = "http://..." // création d'un fichier temporaire pour stocker le résultat $fp = tmpfile(); if(!$fp){ return("Erreur de création de fichier temporaire"); } // ouverture de la session curl $curl_session = curl_init($url); // on utilise la méthode POST curl_setopt($curl_session, CURLOPT_POST, 1); // le résultat de la session sera stocké dans le fichier pointé par $fp curl_setopt($curl_session, CURLOPT_FILE, $fp); // on exécute la session curl_exec($curl_session); // on termine la session en testant s'il y a eu des erreurs ou pas if (curl_errno($curl_session)) { echo curl_error($curl_session); } else { curl_close($curl_session); } // on se positionne au début du fichier et on lit le résultat rewind ($fp); $result = fgets($fp, 60000); fclose($fp);// puis on supprime le fichier (fait automatiquement au fclose) return ($result); } ... // affichage du resultat obtenu pour l'instant, plus tard on l'utilisera ms on ne l'affichera pas echo recup_clients_mobimel();
J'ai vraiment essayé pas mal de solutions mais j'ai rien trouvé. Ca fait qd mm une semaine que je suis bloqué dessus alors toute aide sera vraiment la bienvenue.

Merci d'avance.

Posté : 07 juil. 2005, 10:51
par chips
C'est bon j'ai trouvé la solution à mon problème.
Je viens de relire mon message et c'est vrai que c'etait pas forcément très compréhensible

Posté : 16 févr. 2006, 10:52
par Adx
Je cherche à faire la meme chose que Chips cad créer un fichier à partir d'une Url qui affiche du xml!

En gros je voudrais que mon fichier contienne le xml généré d'une url!

Le tout avec CURL et sans fopen!

Si quelqu'un pouvait m'aiguiller... car Chips n'a pas mis sa solution...... :evil:


Merci

Posté : 16 févr. 2006, 14:31
par Ripat
Pourquoi utiliser la grosse artillerie pour ouvrir un fichier et en stocker le contenu dans un autre?

Le seul avantage à mes yeux de CURL (ou des flux ouverts avec fsockopen) est de pouvoir y mettre un timeout. Voir à ce sujet:
http://www.phpfrance.com/forums/voir_su ... .php#88265

Voir également
  • fopen()
  • file()
  • file_get_contents()
  • fsockopen()