[PHP]fonction mail et retour à la ligne

Discussion dans 'Web, design' créé par II phl II, 14 Décembre 2006.

Statut de la discussion:
Fermée.
  1. Offline
    II phl II Touriste
    Bonjour à tous, j'ai un petit soucis avec la fonction mail de php

    Voici mon code
    Code:
    $from = $_POST['email'];
    $to = "xxx@xxx.be";
    $object = stripslashes($_POST['sujet']);
    $msg = stripslashes($_POST['message']);
    $msg.= "\n\n(Message venant de $from via xxx.be)";
    
    mail ($to, $object, $msg, "From: $from");
    Cela fonctionne parfaitement mais le problème est que les retours à la ligne du formulaire d'envoi sont "doublés" à la réception du mail.

    Exemple
    J'envoie :
    Code:
    Bonjour ...
    blabla
    
    Phil
    Je reçois :
    Code:
    Bonjour ...
    
    blabla
    
    
    
    Phil
    Le plus étonnant est qu'en utilisant mon email courant (celui de mon ISP) pour la réception, ce problème ne survient pas.
    => ce n'est pas la fonction mail de php qui est en cause ni mon client mail.

    Mais je ne peux pas utiliser cet email, seul mon email OVH peut l'être.

    Si qqn a une idée pour solutionner ce problème, cela m'aiderait beaucoup

    Merci à tous
    II phl II, 14 Décembre 2006
    #1
  2. Offline
    FoX SpeEd Touriste
    c'est normal les 2 \n d'affilé?
    FoX SpeEd, 14 Décembre 2006
    #2
  3. Offline
    II phl II Touriste
    Oui c'est pour mettre une sorte de signature automatique en bas de chaque mail envoyé par le site.

    étrangement ce double \n est, quant à lui, bien interprété (un \n pour le passage à la ligne suivante et l'autre \n pour laisser une ligne vide).
    Donc il y a une seule ligne vide entre la fin du mail et la signature.

    Seuls les retours à la ligne du mail (transmis par la variable $POST['message']) sont doublés sur mon email OVH :-'
    II phl II, 14 Décembre 2006
    #3
  4. Offline
    Ahava Revenant
    C'est pas stripslashes qui fout le boxon ?
    Ahava, 14 Décembre 2006
    #4
  5. Offline
    II phl II Touriste
    non j'ai essayé sans mais le problème persiste :beuh:
    II phl II, 14 Décembre 2006
    #5
  6. Offline
    Jereck Procrastinateur
    Equipe GamerZ.be
    Formatter ton mail en HTML :

    Code:
    $from = $_POST['email'];
    $to = "xxx@xxx.be";
    $object = stripslashes($_POST['sujet']);
    $msg = stripslashes($_POST['message']);
    $msg.= "\n\n(Message venant de $from via xxx.be)";
     
    $headers = "MIME-Version: 1.0\r\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $headers .= "From: $from\r\n";
     
    mail ($to, $object, $msg, $headers);
    Jereck, 14 Décembre 2006
    #6
  7. Offline
    II phl II Touriste
    Cela ne fonctionne malheureusement pas :-s
    II phl II, 14 Décembre 2006
    #7
  8. Offline
    II phl II Touriste
    pas d'autres idées ? :-'
    II phl II, 16 Décembre 2006
    #8
  9. Offline
    null ose();
    Code:
    $msg = stripslashes(str_replace("\n", "", $_POST['message']));
    ? :-D
    null, 16 Décembre 2006
    #9
  10. Offline
    II phl II Touriste
    oui mais non ;)
    pas envie d'avoir un message en ligne non plus :pfiou:
    II phl II, 16 Décembre 2006
    #10
Statut de la discussion:
Fermée.