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 :

Réception de mail


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Par défaut Réception de mail
    Bonjour à tous !

    J'ai un petit souci concernant la réception de mail.

    En fait j'ai fait un formulaire et je récupère sur la page cible le prénom ainsi que l'adresse mail de la personne qui s'inscrit.
    Donc je souhaite lui envoyer un message.

    Voici le code PHP :

    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
     
     
       1. $prenom= htmlspecialchars($_POST["prenom"]);
       2.
       3. //=====Déclaration des messages au format texte et au format HTML
       4. $message_txt = "Félicitations !! Vous êtes inscrit etc...";
       5. $message_html = "<html><head></head><body><b>Félicitations !!</b>,<br>Vous êtes inscrit etc...</body></html>";
       6. //==========
       7.
       8. //=====Création de la boundary
       9. $boundary = "-----=".md5(rand());
      10. //==========
      11.
      12. //=====Définition du sujet
      13. $sujet = "Votre inscription !";
      14. //=========
      15.
      16. $mailinscrit= htmlspecialchars($_POST["mailinscrit"]);
      17.
      18. //=====Création du header de l'e-mail
      19. $header = "From: \"Hugues\"<blabla@yahoo.com>\n";
      20. $header.= "Reply-to: \"Hugues\" <blabla@yahoo.com>\n";
      21. $header.= "MIME-Version: 1.0\n";
      22. $header.= "Content-Type: multipart/alternative;\n boundary=\"$boundary\"\n";
      23. //==========
      24.
      25. //=====Création du message
      26. $message = "\n--".$boundary."\n";
      27. //=====Ajout du message au format texte
      28. $message.="Content-Type: text/plain;\n charset=\"ISO-8859-1\"\n";
      29. $message.="Content-Transfer-Encoding: 8bit\n";
      30. $message.= $message_txt."\n";
      31. //==========
      32. $message.= "\n--".$boundary."\n";
      33. //=====Ajout du message au format HTML
      34. $message.="Content-Type: text/html; charset=\"ISO-8859-1\"\n";
      35. $message.="Content-Transfer-Encoding: 8bit\n";
      36. $message.= $message_html."\n";
      37. //==========
      38. $message.= "\n--".$boundary."--\n";
      39. $message.= "\n--".$boundary."--\n";
      40. //==========
      41.
      42. //=====Envoi de l'e-mail
      43.
      44.
      45. mail($mailinscrit,$sujet,$message,$header);

    Donc résultat : J'ai fait des tests en m'envoyant les mails à mon adresse et je reçois bien ces messages avec le titre mais pas le contenu !

    Le $message ne semble pas fonctionner, j'ai essayé d'envoyer des mails sur yahoo ou hotmail, même résultat : le message du mail n'apparaît pas (j'utilise 1&1 comme hébergeur).


    Pouvez-vous m'indiquer le problème qu'il y a dans le code ?

    Je vous remercie pour votre aide.

  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
    Par défaut
    dans $message tu as juste des en-têtes.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Par défaut
    Je ne comprend pas, dans $message, j'ai bien du contenu, car j'ai mis les variables $message_txt et $message_html contenant du texte en indiquant bien que ces deux variables renvoient à $message non?

    Que dois-je modifier exactement?

  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
    Par défaut
    ah oui pardon j'avais raté une ligne.

    tu as essayé d'envoyer un mail tout simple ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Par défaut
    Non.

    Mais en fait je cherche à avoir un contenu html et un autre texte, dans ces formats, c'est pour ça que j'ai mis ce code.

    Tout fonctionne sauf le contenu du mail ($message), mais je ne vois pas où est le problème.

    Que dois-je modifier exactement ?

  6. #6
    Membre expérimenté
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2008
    Messages : 185
    Par défaut
    Bonsoir,

    Je pense que par mail tout simple, sabotage pensait à envoyer un mail avec un simple contenu texte en tant que message, sans headers ni rien, pour ne pas "polluer" le message.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mail($mailinscrit,$sujet,$message_txt,$header);
    Je suis pas spécialiste dans l'envoi de mails, toutefois, avoir un header content-type dans les headers + un différent dans le corps, ça me semble .... spécial

    PS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $headers = 'From: ' . "\r\n"
    		 . 'MIME-Version: 1.0' ."\r\n"
    		 . 'Content-type: text/html; charset=iso-8859-1' . "\r\n"
    Voila ce que je mettais comme headers, ensuite, $message étais directement égal à $message_html, et y m'semble que ça marchais

Discussions similaires

  1. Config postfix - pas de réception de mail
    Par webrider dans le forum Réseau
    Réponses: 11
    Dernier message: 09/08/2006, 22h16
  2. [VBA-O], Evenement dès réception de mail
    Par bonilla dans le forum VBA Outlook
    Réponses: 4
    Dernier message: 11/07/2006, 15h48
  3. Réception de mails depuis mon inscription
    Par Mpierre dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 8
    Dernier message: 12/06/2006, 10h33
  4. [Mail] Réception de mail en spam ?!!?
    Par temperature dans le forum Langage
    Réponses: 8
    Dernier message: 10/05/2006, 09h49
  5. [Microsoft Exchange][Windows2000]Envoi/Réception de mail
    Par kuranes dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 11/01/2006, 16h42

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