Page 1 sur 1

quelques questions mail

Posté : 22 janv. 2015, 17:46
par Paynny
Bonjour à tous,

J'utilise depuis l'année dernière une fonction mail me permettant d'envoyer un mail ainsi qu'une pièce jointe en PDF.
cependant depuis quelques jours sur certaines boîtes mail le mail n'arrive pas ou arrive un jour après.
Pour vous donner un exemple je reçois parfaitement le mail avec ma boîte laposte mais pas avec wanadoo.fr

Ma deuxième question est sur gmail il m'encode le message et le pdf avec un tas de caractère comment pourrais je remédier à ça ?
(j'ai vu que des gens ont des problèmes avec gmail)

Merci d'avance à tous

Re: quelques questions mail

Posté : 22 janv. 2015, 17:52
par Elie
Tu envois des pieces jointes avec mail() ?
Passé par la classe libmail pour voir ?

http://lwest.free.fr/doc/php/lib/

Re: quelques questions mail

Posté : 22 janv. 2015, 17:57
par Paynny
oui voici mon code si ca peut aider
$mail_to = "[email protected]"; //Destinataire  
    $from_mail = "[email protected]"; //Expediteur  
    $from_name = "www.test.com"; //Votre nom, ou nom du site  
    $reply_to = "www.test.com"; //Adresse de réponse  
    $subject = "Devis test";      
    $file_name = "devis.pdf";  
    $path = $_SERVER['DOCUMENT_ROOT']."\pdf\\";  
    $typepiecejointe = filetype($path.$file_name);  
    $data = chunk_split( base64_encode(file_get_contents($path.$file_name)) );  
    //Génération du séparateur  
    $boundary = md5(uniqid(time()));  
    $entete = "From: $from_mail \n";  
    $entete .= "Reply-to: $from_mail \n";  
    $entete .= "X-Priority: 1 \n";  
    $entete .= "MIME-Version: 1.0 \n";  
    $entete .= "Content-Type: multipart/mixed; boundary=\"$boundary\" \n";  
    $entete .= " \n";  
    $message  = "--$boundary \n";  
    $message .= "Content-Type: text/html; charset=\"iso-8859-1\" \n";  
    $message .= "Content-Transfer-Encoding:8bit \n";  
    $message .= "\n";  
    $message .= "Votre devis";   
    $message .= "\n";  
    $message .= "--$boundary \n";  
    $message .= "Content-Type: $typepiecejointe; name=\"$file_name\" \n";  
    $message .= "Content-Transfer-Encoding: base64 \n";  
    $message .= "Content-Disposition: attachment; filename=\"$file_name\" \n";  
    $message .= "\n";  
    $message .= $data."\n";  
    $message .= "\n";  
    $message .= "--".$boundary."--";  
 
	//Envoi du mail
       if(mail($mail_to, $subject, $message, $entete)){ 
	echo "<img src='img/emailsucces.png'/>";
	}else {
	echo "Une erreur s'est produite";
	}