[RESOLU] Mise en page d'un fichier PHP qui envoie un mail

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Mise en page d'un fichier PHP qui envoie un mail

Re: Mise en page d'un fichier PHP qui envoie un mail

par wagscd » 06 mai 2019, 20:50

Re @rthur,

En fait, j'avais pas "compris" ce que tu indiquais concernant l'entête,

J'ai donc mis

Code : Tout sélectionner

$headers .= "\nMIME-Version: 1.0\n" . "Content-Type: text/html; charset=\"utf-8\"\r\n" . " boundary=\"
Et c'est parti. Ca prend bien en charge le "code html" avec juste des <br> et des <p>

Un grand merci pour ces explications ;)

Re: Mise en page d'un fichier PHP qui envoie un mail

par @rthur » 06 mai 2019, 19:59

Comment je fais pour un H1 par exemple ou un <br>
Vu mon exemple, à ton avis, comment devrait-on faire...

Re: Mise en page d'un fichier PHP qui envoie un mail

par wagscd » 06 mai 2019, 19:53

Bonsoir @rthur (t'as vu, j'ai retenu ;) ;)=

Merci pour ta réponse.

Comment je fais pour un H1 par exemple ou un <br>

Merci ;)

Re: Mise en page d'un fichier PHP qui envoie un mail

par @rthur » 06 mai 2019, 18:54

Il ne faut pas que tu "arrêtes" le PHP, tu dois simplement mettre tes balises HTML dans la variable, c'est à dire entre les 2 guillemets doubles.
Attention, si tu as dans ton code HTML des guillemets doubles également il faudra soit que tu les remplaces par une guillemet simple, soit que tu les "échappes", c'est à dire que tu mettes des antislashes devant pour indiquer à PHP que cette guillemet double ne termine pas la définition de ta variable :
$body = " Texte $var <strong style='color:red;'>texte</strong> $var";
ou
$body = " Texte $var <strong style=\"color:red;\">texte</strong> $var";


Si après avoir fait cela dans le mail que tu reçois tu n'as pas la mise en gras qui s'affiche, mais les balises qui s'affichent comme du texte.
Alors c'est qu'il faut que tu définisses dans les entête du mail que c'est un mail au format HTML et non pas au format texte.

Cf l'exemple 5 de la doc :
https://php.net/mail

Mise en page d'un fichier PHP qui envoie un mail

par wagscd » 06 mai 2019, 18:25

Bonjour à toutes et à tous,

J'ai un fichier php qui traite un formulaire de contact en l'envoyant par mail.

Je voudrais que la mise en page soit "jolie" et digne d'un css valable mais je bloque.

Tout se passe dans une variable

Code : Tout sélectionner

$body = " Texte $var texte $var";
Comment puis je faire pour y insérer du Html et css ?

J'ai essayé en "arrêtant le PHP" avec ?> mais cela ne fonctionne pas.

Code : Tout sélectionner

$body = " Texte $var?> HTML <?texte $var";
Je voudrais y ajouter des <br>, des class et autres joies qui permettent d'avoir un "truc" joli.

Merci d'avance pour votre aide.