OVH Community, votre nouvel espace communautaire.

problème avec phpmailer


mirtrandir
30/01/2010, 08h47
Ce que j'ai découvert est (pour une raison qui m'échappe) que si il-y-à 6 mails dans ma base, après réception, 3 mails avec le corps normale (bien lisibles) sont (pour une raison que je ne comprends pas) directement placés dans le répertoire "courrier indésirable" et 2 mails sont dans ma "boite de réception", mais les derniers manquent le nom et l'adresse email d'expéditeur qui est bien dans le script (et le corps ne s'affiche pas en "html").
Un adresse email qui est bien dans la base (georges.kuntz@gmail.com) n'arrive jamais dans ma boite et un ou quelques autres arrivent en double (2 fois) dans ma boite.
Est ce que il-y-à une limitation de nombre de courrier envoyée par la f"onction mail" chez OVH ? Le script (d'envoi) me semble désormais bon!

extrait du script d'envoi:
******************
if ($_POST['Envoyer'])
{
$sql = "SELECT nom_adherent, prenom_adherent, email_adherent FROM castors46_adh_test WHERE annee_echange_adherent > 2000 AND email_adherent !=''";
$result = mysql_query($sql); //execute code SQL
if (mysql_num_rows($result) > 0)
{
echo "

Envoyer mail

";
//Commencer lettre de nouvelles
require("phpmailer/class.phpmailer.php");
$mail = new PHPMailer();
$mail->From = "postmaster@castors46.org";
$mail->FromName = "Castors Cahors";
$mail->Subject = $_POST["sujet"];


while (list($nom_adherent, $prenom_adherent, $email_adherent)=
mysql_fetch_row($result)) {
//nouveau courriel...
$content = $_POST['newsletter'];
$date = date("d-m-Y", time());

$body = "".$_POST["sujet"]."$content";
$plain= str_replace("
\n", "\n", $body);
$plain= stripslashes($plain);

$mail->Body = $body;
$mail->AltBody = $plain;
$destinataire = $prenom_adherent;
$destinataire .= $nom_adherent;
$mail->AddAddress($email_adherent,$destinataire);
//Envoyer
if (!$mail->Send())
echo "L'expédition de mail n'a pas aboutis!!!
";
//Vider les adresses email_adherent
$mail->ClearAddresses();
}
..............................
*************************************************
Marche en combinaison avec "Fckeditor"
*************************************************

mirtrandir
27/01/2010, 14h57
Bonjour,

J'installée sur un de mes sites un script utilisant "phpmailer" (+ fckeditor)

Tout semble être bien programmée (phpmailer est configurée par défaut)
Mais le mail lequel je reçois dans mon client email n'affiche pas le mail en html
mais affiche le "header" + le text avec les tags html

Comme suit :
**********

From: Castors Cahors
Message-ID:
X-Priority: 3
X-Mailer: PHPMailer (phpmailer.sourceforge.net) [version 2.0.3]
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="b1_d1d8afc47c5160d6f434b40fa2203699"
X-Ovh-Tracer-Id: 4334996117561149273
X-Ovh-Remote: 213.186.35.30 (18.mail-out.ovh.net)
X-Ovh-Local: 213.186.33.29 (mx1.ovh.net)
X-Spam-Check: DONE|U 0.5/N


--b1_d1d8afc47c5160d6f434b40fa2203699
Content-Type: text/plain; charset = "iso-8859-1"
Content-Transfer-Encoding: 8bit

Courriel des Castors du Lot

Courriel des Castors du Lot

... etc. etc.
*************************************************

Extrait de mon script:
****************
//Commencer lettre de nouvelles
require("phpmailer/class.phpmailer.php");
$mail = new PHPMailer();
$mail->From = "postmaster@castors46.org";
$mail->FromName = "Castors Cahors";
$mail->Subject = $_POST["sujet"];

echo $mail;
while (list($nom_adherent, $prenom_adherent, $email_adherent)= mysql_fetch_row($result)) {
//nouveau courriel...
$content = $_POST["newsletter"];

//remplacer champs
/*
$content = ereg_replace("{nom_adherent}", $nom_adherent, $content);
$content = ereg_replace("{prenom_adherent}", $prenom_adherent, $content); */
$date = date("d-m-Y", time());
//$content = ereg_replace("{date}", $date, $content);

$body = "".$_POST["sujet"]."$content";
$plain= str_replace("
\n", "\n", $body);
$plain= stripslashes($plain);

$mail->Body = $body;
$mail->AltBody = $plain;
$destinataire = $prenom_adherent;
$destinataire .= $nom_adherent;
$mail->AddAddress($email_adherent, $destinataire);
//Envoyer
if (!$mail->Send())
echo "L'expédition de mail n'a pas aboutis!!!
";
//Vider les adresses email_adherent
$mail->ClearAddresses();
}
echo " Il-y_a envoyée ".mysql_num_rows($result)." emails...";
echo "
Texte envoyée :
";
echo $_POST['newsletter'];
}
} else { ...............

*****************************

Que est ce que je fais faux... ?

Mes remerciements pour une reponse

Georges.Kuntz