Envoi mail automatique php curl

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Envoi mail automatique php curl

Re: Envoi mail automatique php curl

par @rthur » 11 mai 2016, 14:02

Bonjour,

Pour débuguer, il faut que tu regardes le contenu de ce que la page du bon coin te renvoie.
Y a-t-il un message d'erreur ?

Envoi mail automatique php curl

par people20 » 11 mai 2016, 12:31

bonjour,

dans le formulaire à compléter et où je devrais faire la requête, j'ai le code:
<form id="adreply_form" action="/ar/send/0?ca=12_s&id=**********" method="POST" class="mtm">
    <div class="line">
        <label for="name" class="label">Votre nom </label>
        <div class="field-wrapper">
            <input name="name" type="text"  maxlength="50" class="input medium">
             
        </div>
    </div>
    <div class="line">
        <label for="email" class="label">Votre adresse email </label>
        <div class="field-wrapper">
            <input name="email" type="text"  maxlength="80" class="input medium">
             
        </div>
    </div>
    <div class="line">
        <label for="phone" class="label">Votre t&eacute;l&eacute;phone <span class="grey">(facultatif)</span> </label>
        <div class="field-wrapper">
            <input name="phone" type="text"  maxlength="50" class="input small">
             
        </div>
    </div>
    <div class="line">
        <label for="body" class="label">Message </label>
        <div class="field-wrapper">
            <textarea name="body" class="textarea full"></textarea><br />
             
        </div>
    </div>
    <div class="line">
        <div class="field-wrapper">
            <label for="cc" class="mt0 checkbox full"><input id="cc" type="checkbox" name="cc" value="1" >Recevoir une copie de cet email</label>
        </div>
    </div>
     
 
    <input type="submit" name="send" value="Envoyer votre message" class="button-blue mtm mbm">
 
     
</form>
Le site web est leboncoin et sur cette page, pour teste mon script, j'ai fait une annonce bidon.

j'essaie d'envoyer un mail sur cette page mais cela ne marche pas.

Je ne reçois aucun mail. mon script est le suivant:
$url = 'https://www.leboncoin.fr/ar/form/0?ca=12_s&id=***********';
    $params = array(
                        'name' => urlencode('nom'),
                        'email' => urlencode('[email protected]'),
                        'phone' => urlencode('000000000000'),
                        'body' => urlencode('blablabla'),
                        'cc' => 1,
                        'send' => urlencode('Envoyer votre message')
                );
 
    foreach($params as $cle=>$valeur) { $params_string .= $cle.'='.$valeur.'&'; }
    $params_string = rtrim($params_string, '&');
 
    $ch = curl_init();
     
    curl_setopt($ch,CURLOPT_URL, $url);
    curl_setopt($ch,CURLOPT_POST, count($params));
    curl_setopt($ch,CURLOPT_POSTFIELDS, $params_string);
 
    if ($result = curl_exec($ch)) {
            echo ('<h1> le mail a été envoyé avec succès </h1>');
    }
    else {
        trigger_error(curl_error($ch));
    }
     
    curl_close($ch);
Sur ma page, il m'affiche bien que le mail est envoyé mais dans ma boîte mail je ne reçois pas le mail.

Si vous avez une idée du comment du pourquoi, je suis preneur.

Merci d'avance