Rechercher : dans
Par :

[php] fonction mail

Dernière réponse le 4 sep 2009 à 12:01:20 widi70, le 15 avr 2009 à 11:41:21 
 Signaler ce message aux modérateurs

Bonjour à tous, j'ai un petit problème avec ma fonction mail, il se trouve que tout les mails que j'envoie vont dans les spam. Alors bien entendu mon cas n'est pas isolé, donc j'ai modifier mes en-entêtes de nombreuses fois mais rien, il va toujours dans les spam, donc bon...
Voici ma fonction :
$headers ='From: "RBS France"<contact@rbs.fr>'."\n";
$headers .='Reply-To: contact@rbs.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$headers .= "X-Sender: <www.rbs-france.fr>\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "X-auth-smtp-user: contact@rbs.fr \n";
$headers .= "X-abuse-contact: stop@rbs.fr";

$message ='' ==> le message est un tableau en HTML pour récapituler la commande.

mail($_SESSION['user_id'], 'Récapitulatif Commande', $message, $headers);

donc voila je voit plus trop quoi faire, comme hébergeur je suis chez OVH donc je pense pas que le problème viennent de la.
Merci de votre aide

Configuration: Windows XP
Firefox 3.0.8

Meilleures réponses pour « [php] fonction mail » dans :
[PHP] Fonction mail() Voir La fonction mail() est bloquée chez certains des hébergeurs gratuits pour des raisons de sécurité (afin d'éviter le spam notamment), l'adresse ip de la machine qui a demandé le script sera alors indiquée dans le header 'X-MM-Mail-From-IP'. renseignez...
PHP - Mail et fonctions réseau VoirPHP étant un langage consacré au Web, il possède bien évidemment des fonctions lui permettant de communiquer avec le "monde extérieur" à l'aide de fonctions standards. Le service le plus utilisé sur Internet étant la messagerie électronique, il est...

1

le père, le 15 avr 2009 à 13:48:56

Bonjour

Il te manque un séparateur à la fin de la ligne $headers .='Content-Transfer-Encoding: 8bit';
Normalement, les headers sont séparés par \r\n, pas \n seul.
Il est possible que ça suffise.

Répondre à le père

2

widi70, le 15 avr 2009 à 15:26:31

Bonjour et merci de ton aide, donc j'ai essayé avec 2 séparateurs partout mais non....
Autres idées???
Voici maintenant mes headers:
$headers ='From: "RBS France"<contact@rbs.fr>'."\r\n";
$headers .='Reply-To: contact@rbs.fr'."\r\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\r\n";
$headers .='Content-Transfer-Encoding: 8bit \r\n';
$headers .= 'X-Sender: <www.rbs-france.fr> \r\n';
$headers .= 'X-Mailer: PHP \r\n';
$headers .= 'X-auth-smtp-user: contact@rbs.fr \r\n';
$headers .= 'X-abuse-contact: stop@rbs.fr \r\n';


Merci d'avance

Répondre à widi70

3

widi70, le 16 avr 2009 à 12:10:13

SVP un tit coup de main

Répondre à widi70

4

okuni, le 16 avr 2009 à 12:18:42

D'après ce que j'ai entendu, soit c'est le header soit l'hébergeur qui fait que le mail soit lu comme étant un spam.
Je suis moi même chez OVH donc ce n'est effectivement pas l'hébergeur.
voici mon header, esseye avec celui-ci, tu ne devrait pas avoir de problème.

$headers = 'From: "'.$nom_expediteur.'" <'.$email_expediteur.'>'."\n";
	$headers .= 'Return-Path: <'.$email_reply.'>'."\n";
	$headers .= "X-Mailer: PHP/" . phpversion() . "\n" ;
	$headers .= "MIME-version: 1.0\n";
	$headers .= "Content-type: text/html; charset= iso-8859-1\n"; 
L'amour, c'est comme les spaghettis; quand c'est mou, c'est cuit. (proverbe belge)

Répondre à okuni

5

scriptiz, le 16 avr 2009 à 14:51:08

Voici comment j'envoie mes e-mails, ils ne tombent pas dans les spams de GMail ni de Outlook 2007 :

	$email_to = "destinataire@gmail.com";
	$subject = "Sujet du message";
	$headers = "From: \"Destinateur\"<destinateur@gmail.com>\n";
	$headers .= "Reply-To: destinateur@gmail.com\n";
	$headers .= 'Content-Type: text/html; charset="iso-8859-1"'."\n";
	$headers .= 'Content-Transfer-Encoding: 8bit';

	$message = "<html><head><title>$subject</title>";
	$message = '</head><body>';

	$message .= "<p>Bonjour,</p>";
	$message .= "<p>Ceci est un mail en HTML.</p>";
	$message .= "<p>Bien à vous,</p>";

	$message .= "<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>Moi</i></p>";
	$message .= '</body></html>';


	mail($email_to, $subject, $message, $headers);

Répondre à scriptiz

6

 Narkos, le 4 sep 2009 à 12:01:20

Hello,

J'ai testé la fonction mail de "scriptiz" et ça fonctionne parfaitement!
Merci!

Répondre à Narkos