CURL : envoie d'une requete POST [Résolu]

jeje11991 144 Messages postés samedi 30 août 2003Date d'inscription 14 août 2008 Dernière intervention - 24 août 2006 à 13:13 - Dernière réponse : cs_millo 3 Messages postés jeudi 25 septembre 2003Date d'inscription 1 mars 2007 Dernière intervention
- 1 mars 2007 à 17:35
Bonjour,
Est ce que vous pouvez m'expliquer comment envoyer une requete POST avec curl.

Merci d'avances
Afficher la suite 

5 réponses

Répondre au sujet
malalam 10918 Messages postés lundi 24 février 2003Date d'inscription 2 mars 2010 Dernière intervention - 24 août 2006 à 13:23
+3
Utile
Hello,

mettons que ce soit des données en post...sur la page du formulaire (ou la page sur laquelle renvoei ton formulaire), dans le traitement du formulaire, tu mets ceci (par exemple) :
  $rCurl = curl_init();
  curl_setopt ($rCurl, CURLOPT_URL, "http://www.monserveur.com/pageCurl.php");
  curl_setopt ($rCurl, CURLOPT_HEADER, false);
  curl_setopt ($rCurl, CURLOPT_POST, true);
  curl_setopt ($rCurl, CURLOPT_POSTFIELDS, $_POST);
  curl_setopt ($rCurl, CURLOPT_RETURNTRANSFER, true);
  $bResult = curl_exec ($rCurl);
  curl_close ($rCurl);

echo $bResult;

Mates la doc, surtout pour les options, c'est important!
http://fr2.php.net/manual/fr/ref.curl.php
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de malalam
malalam 10918 Messages postés lundi 24 février 2003Date d'inscription 2 mars 2010 Dernière intervention - 24 août 2006 à 13:32
+3
Utile
Bon un exemple plus complet :

curltest.php :
<?php
if (isset ($_POST['curlme']) && $_POST['curlme'] === 'Envoyer') {
 $rCurl = curl_init();
 curl_setopt ($rCurl, CURLOPT_URL, "http://localhost/tests/pagecurl.php");
 curl_setopt ($rCurl, CURLOPT_HEADER, false);
 curl_setopt ($rCurl, CURLOPT_POST, true);
 curl_setopt ($rCurl, CURLOPT_POSTFIELDS, $_POST);
 curl_setopt ($rCurl, CURLOPT_RETURNTRANSFER, true);
 $iResult = curl_exec ($rCurl);
 curl_close ($rCurl);
 echo 'Valeur retournée : ', $iResult, '

';
}
?>
<form action="" method="post">
 
  <label for="chiffre">Entrez un chiffre</label>
  
 

 
  
 

</form>

pagecurl.php :
<?php
if (isset ($_POST['chiffre'])) {
 if (is_numeric ($_POST['chiffre'])) {
  echo $_POST['chiffre'], ' * 2 = ', (int)($_POST['chiffre'] * 2);
 } else {
  echo 'La valeur envoyée n\'était pas numérique';
 }
}
?>

attention, pour cet exemple (c'est juste un exemple), regarde l'url que j'ai mise dans CURLOPT_URL : les 2 fichiers (ou du moins le fichier pagecurl.php) doivent se trouver dans la racine de ton serveur web/tests/
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de malalam
lefter 63 Messages postés lundi 7 juin 2004Date d'inscription 16 mai 2009 Dernière intervention - 24 août 2006 à 13:23
0
Utile
Pour toutes informations sur curl.  Voir : http://fr.php.net/curl   ( Site anglais )

Lefter
Commenter la réponse de lefter
jeje11991 144 Messages postés samedi 30 août 2003Date d'inscription 14 août 2008 Dernière intervention - 24 août 2006 à 13:48
0
Utile
merciiii, je devrais m'en sortir avec ca
Commenter la réponse de jeje11991
cs_millo 3 Messages postés jeudi 25 septembre 2003Date d'inscription 1 mars 2007 Dernière intervention - 1 mars 2007 à 17:35
0
Utile
Bonjour à tous !

Je cherche à utiliser curl pour envoyer des données POST avec quelques champs texte mais aussi un champ file qui me pose problème. Quelqu'un pourrait il m'indiquer la marche à suivre pour ce type d'opération ?

Merci d'avance !
Commenter la réponse de cs_millo

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.