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] Les sauts de lignes pas pris en compte


Sujet :

Langage PHP

  1. #1
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut [Mail] Les sauts de lignes pas pris en compte
    Salut,

    J'ai un texte qui est envoyé en mail:

    $send = $message['top'].'Une personne, surement vous, s\'est abonné à la newsletter de ' . $message['url']['site'] . "\r\n"
    .'Pour confirmer cet abonnement, copiez le lien qui suit dans votre navigateur:' . "\r\n"
    .$message['url']['register'] . "\r\n"
    .'Autrement, supprimez votre email en vous rendant sur ce lien:' . "\r\n"
    .$message['url']['unregister'] . "\r\n"
    .$message['foot'];
    Le problème c'est que mes \r\n ne sont jamais pris en compte lors de la réception de ce mail.
    Comment faire?
    Merci

  2. #2
    Membre émérite
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Points : 2 791
    Points
    2 791
    Par défaut
    j'ai eu le meme probleme j'ai enleve les "\r" et remplace par de "\n" et cela a fonctionne
    "Ce besoin de remords qui précède le Mal, que dis-je ! qui le crée..." E. CIORAN

  3. #3
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 222
    Points
    8 222
    Billets dans le blog
    17
    Par défaut
    Ton mail est-il bien lu en tant que texte ? (et on HTML).


    PS : Tu devrais délimiter $send avec des ", ton code serait plus lisible.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  4. #4
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    Non moi les \n\n ça ne fonctionne pas non plus

    Sinon mon but est de l'envoyer en HTML ou en texte, donc je ne mets pas <br>, car il se peut que se soit texte demandé.
    Ou bien je controle a chaque fois et je mets mes sauts de lignes en fonction du format mais c'est lourd. Normalement \r\n c'est pas universel?

  5. #5
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 222
    Points
    8 222
    Billets dans le blog
    17
    Par défaut
    Oula j'ai rien compris.

    \r\n ne provoque pas de retour à la ligne en HTML
    En HTML le retour à la ligne est <br>

    Donc :

    Si tu envoies un e-mail texte : \r\n (les <br> seront affichés)
    Si tu envoies un e-mail HTML : <br> (les \r\n n'auront pas d'effet "visuel")
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  6. #6
    Membre émérite
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Points : 2 791
    Points
    2 791
    Par défaut
    et comme cela, ca ne fonctionne pas non plus?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $send = $message['top']."Une personne, surement vous, s\'est abonné à la newsletter de ". $message['url']['site'] . "\r\n";
    $send.="Pour confirmer cet abonnement, copiez le lien qui suit dans votre navigateur:\r\n";
    $send.=$message['url']['register'] . "\r\n";
    $send.="Autrement, supprimez votre email en vous rendant sur ce lien:\r\n";
    $send.=$message['url']['unregister'] . "\r\n";
    $send.=$message['foot'];
    "Ce besoin de remords qui précède le Mal, que dis-je ! qui le crée..." E. CIORAN

  7. #7
    Membre habitué Avatar de ..:: Atchoum ::..
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    159
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 159
    Points : 156
    Points
    156
    Par défaut
    Citation Envoyé par Séb.
    Oula j'ai rien compris.

    \r\n ne provoque pas de retour à la ligne en HTML
    En HTML le retour à la ligne est <br>

    Donc :

    Si tu envoies un e-mail texte : \r\n (les <br> seront affichés)
    Si tu envoies un e-mail HTML : <br> (les \r\n n'auront pas d'effet "visuel")
    Penses a mettre résolu
    On ne peut empêcher les vagues, mais on peut apprendre à les surfer...
    http://blog.plopix.net
    http://www.ez-france.org

  8. #8
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $message['url']['site'] . chr(13);
    :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $message['url']['site'] . chr(10);
    :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $message['url']['site'] . chr(10).chr(13);
    :
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  9. #9
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    Les chr(x) ne fonctionnent pas.
    Sinon j'ai fini par faire selon le format, avec:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $br = ($format == 'HTML') ? '<br>' : "\r\n";
    En Html, cette fois ça passe, mais toujours pas en Texte

  10. #10
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    comment tu envoies ton mail ? on peut avoir le code source (recu par le mailer) du mail de test ?

  11. #11
    Membre émérite
    Avatar de yiannis
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 494
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 494
    Points : 2 791
    Points
    2 791
    Par défaut
    je pense qu'il faut que tu dise que ton mail est en :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "Content-Type: multipart/alternative;
    dans tes headers et faire une version texte et une version html
    "Ce besoin de remords qui précède le Mal, que dis-je ! qui le crée..." E. CIORAN

  12. #12
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 222
    Points
    8 222
    Billets dans le blog
    17
    Par défaut
    Avant de faire des trucs compliqués faudrait peut-être qu'Anduriel arrive déjà à envoyer un simple mail en text/plain qui prend bien les retours à la ligne.
    Mais bon, on n'est pas très aidé avec Anduriel qui reste très très vague...
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  13. #13
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    Désolé, j'ai beau regarder dans les menus de Outlook, je ne trouve pas le code source
    Sinon pour les header tu veux dire que j'en fait un dans chaque cas?
    Actuellement j'ai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $headers .= 'Content-type: text/html; charset=iso-8859-1';
    Bon comme je suis trop vague, je vous mets tout mon code, je ne peux faire que ça

    => -OUT- Pour une bonne mise en page.

  14. #14
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 222
    Points
    8 222
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par Anduriel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $headers .= 'Content-type: text/html; charset=iso-8859-1';
    Ben là forcément tes \r\n ne seront jamais pris en compte
    Ils ne le seront qu'avec un Content-Type en text/plain.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  15. #15
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    Ah lol
    Merci je vais voir ça tout de suite.

  16. #16
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    Génial
    Merci

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

Discussions similaires

  1. Les changements ne sont pas pris en compte
    Par charlescol dans le forum Qt Creator
    Réponses: 1
    Dernier message: 27/04/2015, 08h53
  2. HttpServletResponse: Saut de ligne non pris en compte
    Par cisnake dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 07/05/2014, 12h53
  3. [OL-2007] Problème outlook retour à la ligne pas pris en compte
    Par Pov type dans le forum Outlook
    Réponses: 3
    Dernier message: 13/04/2012, 09h40
  4. Retour a la ligne pas pris en compte depuis un textarea
    Par avogadro dans le forum Langage
    Réponses: 3
    Dernier message: 26/11/2006, 04h37
  5. Réponses: 8
    Dernier message: 17/11/2005, 12h24

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