IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Mail] Probleme fonction mail


Sujet :

Langage PHP

  1. #1
    Inactif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 101
    Points : 67
    Points
    67
    Par défaut [Mail] Probleme fonction mail
    Bonjour,

    merci d'avance pour ceux qui prendrons la peine de me lire et de m'aider.

    Quand j'envoie un mail avec php le header reçu ressemble à ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    de	no-reply@monsite.fr
    heure de l expéditeur	Envoyé à 21:39 
    à	toto@gmail.com
    date	23 juin 2009 21:39
    objet	Activez votre annonce
    envoyé par	48.mail-out.ovh.net
    Ce qui me pose problème c'est la dernière ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    envoyé par 48.mail-out.ovh.net
    Comment faire pour avoir le domaine à la place du nom du server ex:

    Voici ma fonction mail

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    function HTMLMail($to, $subj, $msg, $from="", $charset="iso-8859-1", $xtraheaders="")
    {
    	$headers  = "";
    	//if($from) $headers .= "From: {$from}\n";
    	$headers .= 'From: monsite.fr <no.reply@monsite.fr>'."\n";
     
    	// Message de Priorité haute
    	// -------------------------
    	$headers .= "X-Priority: 1  \n";
    	$headers .= "X-MSMail-Priority: High \n";
     
        $headers .= "Date: " . date("r") . "\n";
        $headers .= "Message-ID: " . generateMessageID() . "\n";
    	$headers .= "MIME-Version: 1.0\n";
    	$headers .= "Content-Type: text/html; charset=\"$charset\"\n";
    	$headers .= "Content-Transfer-Encoding: 8bit\n";
    	$headers .= $xtraheaders;
    	$headers .= "\n";
     
    	$ret = mail ($to, $subj, $msg, $headers, "-f$from");
    	return $ret;
    }

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Est-ce que tu utilises $xtraheaders ?
    Si non c'est que c'est le serveur qui ajoute ce champ.

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 101
    Points : 67
    Points
    67
    Par défaut
    Merci pour ton aide

    Oui dans ma fonction plus haut je fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $headers .= $xtraheaders;

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    certes mais est-ce que tu défini ce champ dans ton appel a la fonction ?

  5. #5
    Inactif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 101
    Points : 67
    Points
    67
    Par défaut
    Alors je viens d'essayer comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    if(!$in_admin)
    		{
    			// compose le message et le lien d'activation
    			$msg = file_get_contents("mailtemplates/newpost.txt");
    			$msg = str_replace("{@SITENAME}", $site_name, $msg);
    			$msg = str_replace("{@SITEURL}", $script_url, $msg);
    			$msg = str_replace("{@ADTITLE}", $data['adtitle'], $msg);
    			$msg = str_replace("{@PASSWORD}", $data['password'], $msg);
     
    			// Get expiry
    			if ($data['isevent']) 
    			{
    				$expireafter = $expire_events_after;
    			}
    			else
    			{
    				$sql = "SELECT expireafter FROM $t_subcats WHERE subcatid = $data[subcatid]";
    				list($expireafter) = mysql_fetch_array(mysql_query($sql));
    			}
    			$msg = str_replace("{@EXPIREAFTER}", $expireafter, $msg);
    			$msg = str_replace("{@EXPIRESON}", substr($expiry_dt, 0, 10), $msg);
     
     
    			$verificationlink = "$script_url/?view=activate&type=$adtype&adid=$adid&codemd5=$codemd5&cityid=$xcityid";
    			$msg = str_replace("{@VERIFICATIONLINK}", $verificationlink, $msg);
     
    			if($_POST['isevent'])
    			{
    				if($sef_urls) $adlink = "$script_url/{$vbasedir}$xcityid/events/$starton/$adid.html";
    				else $adlink = "$script_url/?view=showevent&adid=$adid&cityid=$xcityid";
    			}
    			else
    			{
    				if($sef_urls) $adlink = "$script_url/{$vbasedir}$xcityid/posts/$catid/$data[subcatid]/$adid.html";
    				else $adlink = "$script_url/?view=showad&adid=$adid&cityid=$xcityid";
    			}
     
    			$msg = str_replace("{@ADURL}", $adlink, $msg);
     
    			$editlink = "$script_url/?view=edit&isevent=$_POST[isevent]&adid=$adid&codemd5=$codemd5&cityid=$xcityid";
    			$msg = str_replace("{@EDITURL}", "$editlink", $msg);
     
                $subj = $lang['MAILSUBJECT_NEW_POST'];
                $subj = str_replace("{@ADTITLE}", $data['adtitle'], $subj);
     
    			$xtraheaders ="monsite.fr";
     
    			if (!@HTMLMail($_POST['email'], $subj, $msg, $site_email, $xtraheaders))
    			{
    				/*if($debug) echo "<p>Erreur envoi activation mail.<br>Mail contents are displayed for testing purposes.<br>Please go to <a href='$activationlink'>$activationlink</a> activate your post. <pre>$msg</pre>";
    				else*/ die("<br><span style=\"color:red;font-weight:bold;\">Error sending confirmation mail</span><br>");
    			}
    et la fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    function HTMLMail($to, $subj, $msg, $from="", $charset="iso-8859-1", $xtraheaders="")
    {
    	$headers  = "";
    	//if($from) $headers .= "From: {$from}\n";
    	$headers .= 'From: Monsite.fr <no.reply@monsite.fr>'."\n";
     
    	// Message de Priorité haute
    	// -------------------------
    	$headers .= "X-Priority: 1  \n";
    	$headers .= "X-MSMail-Priority: High \n";
     
        $headers .= "Date: " . date("r") . "\n";
        $headers .= "Message-ID: " . generateMessageID() . "\n";
    	$headers .= "MIME-Version: 1.0\n";
    	$headers .= "Content-Type: text/html; charset=\"$charset\"\n";
    	$headers .= "Content-Transfer-Encoding: 8bit\n";
    	$headers .= $xtraheaders;
    	$headers .= "\n";
     
    	$ret = mail ($to, $subj, $msg, $headers, "-f$from");
    	return $ret;
    }
    Mais j'ai toujours
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    envoyé par	48.mail-out.ovh.net

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    c'est que c'est le serveur qui ajoute ce champ.
    d'ailleurs pourquoi te gêne t'il ? je suppose qu'il n'est pas directement apparement dans le mail reçu.

  7. #7
    Inactif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 101
    Points : 67
    Points
    67
    Par défaut
    Ba dans certaine application de messagerie il est visible justement

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    hum lesquels ?

    tu peux toujours essayer d'ajouter cet en-tête toi même mais a mon avis il sera écrasé.

  9. #9
    Inactif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 101
    Points : 67
    Points
    67
    Par défaut
    Comme tu le dit il est écraser automatiquement, tant pis cela restera ainsi

    merci pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Mail] probleme fonction checkdnsrr() php 5
    Par Joe Le Mort dans le forum Langage
    Réponses: 1
    Dernier message: 19/10/2006, 18h08
  2. [Mail] Problème fonction mail
    Par webkawa dans le forum Langage
    Réponses: 3
    Dernier message: 09/09/2006, 19h11
  3. [Mail] Problème fonction mail()
    Par Gmal dans le forum Langage
    Réponses: 13
    Dernier message: 31/08/2006, 22h02
  4. [Mail] Probleme fonction mail()
    Par moulefrite dans le forum Langage
    Réponses: 18
    Dernier message: 23/05/2006, 08h21
  5. [Mail] Probleme fonction mail()
    Par tissot dans le forum Langage
    Réponses: 1
    Dernier message: 14/11/2005, 12h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo