fonction mail() devenue inopérante

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 : fonction mail() devenue inopérante

Re: fonction mail() devenue inopérante

par Anémone » 16 févr. 2011, 01:34

En fait, les courriers n'arrivant pas arrivaient bien, bloqués par le serveur comme courriers indésirables..........
Merci Anémone!

Re: fonction mail() devenue inopérante

par Anémone » 16 févr. 2011, 01:24

Rebonjour,

C'est très mystérieux. En enlevant tous les liens conduisant à des domaines différents du mien, les newsletters qui ne passaient plus passent à nouveau, alors que certaines newsletters comportant des liens vers des domaines autres que le mien passaient quand même..........

Re: fonction mail() devenue inopérante

par Anémone » 15 févr. 2011, 18:52

Je viens apporter une précision:

En fait la fonction mail fonctionne dans certains cas et dans d'autres non, selon le contenu de $messhtml, $messhtml contenant en fait une newsletter entière, avec styles etc, .je ne me vois pas sorti de là si je dois réécrire une telle newsletter "inenvoyable" jusqu'à déceler ce qui bloque. Car je le répète, je n'ai effectué aucun changement ni dans les scripts, ni dans les dossiers les contenant.

Si cette précision peut aiguiller quelqu'un pour m'aider...
Merci d'avance,

Thierry

fonction mail() devenue inopérante

par Anémone » 15 févr. 2011, 13:36

Bonjour,

Je viens aujourd'hui soumettre à votre expertise un problème qui me turlupine sérieusement. Jusque-là, j'utilisai pour expédier mes newsletters à mes abonnés le script suivant, et celui-ci fonctionnait parfaitement.
$sujet = "C'est le sujet";
$headers  = "From: \"Bidule\"<[email protected]>\n";

  $boundary = "-----=" . md5( uniqid ( rand() ) );
  $headers .= "MIME-Version: 1.0\n";
 $headers .= "Content-Type: multipart/alternative; boundary=\"$boundary\"";
 
 $message_txt  = "Bidule\n\n";
 $message_txt .= "Le portail des machins\n";
 $message_txt .= "etc, etc";


  $message  = "This is a multi-part message in MIME format.\n\n";
  $message .= "--" . $boundary . "\n";
  $message .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";
  $message .= "Content-Transfer-Encoding: quoted-printable\n\n";
  $message .= $message_txt;

  $message .= "\n\n";
  $message .= "--" . $boundary . "\n";
  $message .= "Content-Type: text/html; charset=\"iso-8859-1\"\r\n";
  $message .= "Content-Transfer-Encoding: quoted-printable\n\n";
  $message .= $messhtml;
  $message .= "\n\n";
  $message .= "--" . $boundary . "--\n";
 //requete d'extraction des destinataires
$sql="SELECT * FROM ...";
$result=mysql_query($sql);
while ($tab=mysql_fetch_array($result))
{

$email=$tab['mail'];



mail($email, $sujet , $message, $headers);

  } 
   
  
 
Il n'a plus fonctionné -c'est à dire que les mails ne sont plus parvenus à leur destinataire- sans la moindre modification de ma part.
La fonction mail(), quant à elle continue parfaitement de fonctionner, je l'ai testée avec un script basique.
Je suis bien embêté...
Un grand merci d'avance pour le coup de main.
Cordialement,

Thierry

PS: $messhtml est évidemment renseignée et un echo l'affiche correctement.