Envoi de mail PHP

Résolu/Fermé
Miimidedel Messages postés 345 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 5 juin 2019 - Modifié par Miimidedel le 28/09/2012 à 12:07
Miimidedel Messages postés 345 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 5 juin 2019 - 28 sept. 2012 à 15:44
Bonjour,



Nous avons changé de serveur et depuis plus aucun envoi de mails sur nos sites (la plupart) ne fonctionnent..

J'utilisais la class PHP Mailer. (pas de smtp)

J'ai testé le code du site du zero histoire de voir si c'était la classe ou le serveur qui ne marchait pas.. Et ça m'affiche bien "Envoyé ! " mais je ne reçois rien..

Code :

<?php
$mail = 'd.chacha@hotmail.fr'; // Déclaration de l'adresse de destination. 
if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $mail)) // On filtre les serveurs qui rencontrent des bogues. 
{ 
 $passage_ligne = "\r\n"; 
} 
else 
{ 
 $passage_ligne = "\n"; 
} 
//=====Déclaration des messages au format texte et au format HTML. 
$message_txt = "Salut à tous, voici un e-mail envoyé par un script PHP."; 
$message_html = "<html><head></head><body><b>Salut à tous</b>, voici un e-mail envoyé par un <i>script PHP</i>.</body></html>"; 
//========== 
  
//=====Création de la boundary 
$boundary = "-----=".md5(rand()); 
//========== 
  
//=====Définition du sujet. 
$sujet = "Hey mon ami !"; 
//========= 
  
//=====Création du header de l'e-mail. 
$header = "From: \"WeaponsB\"<weaponsb@mail.fr>".$passage_ligne; 
$header.= "Reply-to: \"WeaponsB\" <weaponsb@mail.fr>".$passage_ligne; 
$header.= "MIME-Version: 1.0".$passage_ligne; 
$header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne; 
//========== 
  
//=====Création du message. 
$message = $passage_ligne."--".$boundary.$passage_ligne; 
//=====Ajout du message au format texte. 
$message.= "Content-Type: text/plain; charset=\"ISO-8859-1\"".$passage_ligne; 
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne; 
$message.= $passage_ligne.$message_txt.$passage_ligne; 
//========== 
$message.= $passage_ligne."--".$boundary.$passage_ligne; 
//=====Ajout du message au format HTML 
$message.= "Content-Type: text/html; charset=\"ISO-8859-1\"".$passage_ligne; 
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne; 
$message.= $passage_ligne.$message_html.$passage_ligne; 
//========== 
$message.= $passage_ligne."--".$boundary."--".$passage_ligne; 
$message.= $passage_ligne."--".$boundary."--".$passage_ligne; 
//========== 
  
//=====Envoi de l'e-mail. 
if(!mail($mail,$sujet,$message,$header)) { echo "Failed"; } else { echo "Envoyé !";} 
//========== 

?>
   



Code PHP Mailer :

<?php
$mail = new PHPMailer();

	
			$subject = 'Votre achat sur le site SITE';
			$msg_txt = "Bonjour,\n\n"
						."Votre achat sur le site SITE est validé.\n\n"
						."Voici les informations de la transaction:\n"
						."Film \"La Saga des SITE\" en DVD\n"
						."Numéro de transaction: \n"
						."Montant total TTC de la transaction (frais de port inclus):  euros (dont TVA à 19.6% :  euros)\n"
						."Vous trouverez en pièce jointe la facture de votre achat.\n"
						."Merci de l'intérêt que vous portez à la Saga des SITES.";
			$msg_html = "<p>Bonjour,</p>"
						."<p>Votre achat sur le site SITE est validé.</p>"
						."<p>Voici les informations de la transaction :</p>"
						."<ul><li>Film \"La Saga des SITES\" en DVD</li>"
						."<li>Numéro de transaction: </li>"
						."<li>Montant total TTC de la transaction (frais de port inclus):  € (dont TVA à 19.6% :  €)</li></ul>"
						."<p>Vous trouverez en pièce jointe la facture de votre achat.</p>"
						."<p>Merci de l'intérêt que vous portez à la Saga des SITE.</p>";
			$dest = 'monadressmail@domain.fr';*/
			
			$sql5 = "SELECT id_facto FROM facturation ORDER BY id_facto DESC LIMIT 0,1";
			$res5 = mysql_query($sql5, $mysql_int);
			$val5 = mysql_fetch_assoc($res5);
				
			$file = "facture_".$val5['id_facto'].".pdf";
			$pdf = 'http://www.mon_intranet.com/intranet/factures/'.$file;

			$content=file_get_contents($pdf);

 
			$mail->AddReplyTo('monadressmail@domain.fr', 'Site SITE');
			$mail->AddAddress('monadressmail@domain.fr'); // $dest remplacé pour test
			$mail->SetFrom('monadressmail@domain.fr', 'Site pSITE');
			$mail->Subject = 'Votre achat sur le site SITE';
			// $mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; // optional - MsgHTML will create an alternate automatically
			$mail->MsgHTML($msg_html);
			//$mail->AddStringAttachment($content,$file); // attachment
        
            
			if(!$mail->Send()) {
                    echo "Mailer Error: ".$mail->ErrorInfo;
                                } else {
                    echo "Message sent!";
                                                }
?>



Qu'est ce qui pourrait être à l'origine de tout ça ?..

Je vous remercie !

A voir également:

3 réponses

Miimidedel Messages postés 345 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 5 juin 2019 71
28 sept. 2012 à 15:44
J'ai réglé mon souci !


----> Tapez cette petite commande sur votre serveur si TOUS les envois de mail confondus via PHP ne fonctionnent pas :

sudo /etc/init.d/postfix restart
2
ugo22g Messages postés 57 Date d'inscription lundi 18 juin 2007 Statut Membre Dernière intervention 31 janvier 2014 11
28 sept. 2012 à 11:58
salut, a première vue la balise
<?php
Ton code !
?>
0
Miimidedel Messages postés 345 Date d'inscription mercredi 4 août 2010 Statut Membre Dernière intervention 5 juin 2019 71
28 sept. 2012 à 12:00
Elles sont bien mises mais j'ai oublié de les copier (sinon je n'aurais pas "Envoyé !" comme retour)

Je désespère !
0