Intégrer une page prédéfini dans sendmail

Fermé
okbabb Messages postés 57 Date d'inscription samedi 23 avril 2022 Statut Membre Dernière intervention 15 mai 2023 - 15 mai 2023 à 00:17
jordane45 Messages postés 38213 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 juin 2024 - 15 mai 2023 à 13:22

Bonjour,

J'utilise sendmail ' php 5.6.30 ' pour l'envoi de code de confirmation par email.

<?php
$dest = $mail;
$sujet = "Confirmer votre inscription";
$corp = "Le code de confirmation est :\n".$code_confirmation." ";
$headers = "From:Administrateur";
if (mail($dest, $sujet, $corp, $headers) ) { echo "Le code de confirmation a été envoyé à l'email suivant : $dest ..."; }
else
{ echo "L'envoi de l'email a échoué ..."; }
?>

Je veux pas le contenu de " $corp " est un texte simple, je veux intégrer une page html ou php prédéfini dans le contenu de " $corp " pour que l'email de vérification soit bien présenté.

Merci d'avance.

A voir également:

1 réponse

jordane45 Messages postés 38213 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 juin 2024 4 678
15 mai 2023 à 00:28

Bonjour,

Et bien...  il te suffit d'écrire du code HTML  à l'intérieur de ta variable $corp

sans oublier de modifier la partie headers en précisant le format à utiliser

Content-Type: text/html; charset=utf-8

Exemple issu de la documentation officielle de php : https://www.php.net/manual/fr/function.mail.php

<?php
     // Plusieurs destinataires
     $to  = 'johny@example.com, sally@example.com'; // notez la virgule

     // Sujet
     $subject = 'Calendrier des anniversaires pour Août';

     // message
     $message = '
     <html>
      <head>
       <title>Calendrier des anniversaires pour Août</title>
      </head>
      <body>
       <p>Voici les anniversaires à venir au mois d\'Août !</p>
       <table>
        <tr>
         <th>Personne</th><th>Jour</th><th>Mois</th><th>Année</th>
        </tr>
        <tr>
         <td>Josiane</td><td>3</td><td>Août</td><td>1970</td>
        </tr>
        <tr>
         <td>Emma</td><td>26</td><td>Août</td><td>1973</td>
        </tr>
       </table>
      </body>
     </html>
     ';

     // Pour envoyer un mail HTML, l'en-tête Content-type doit être défini
     $headers[] = 'MIME-Version: 1.0';
     $headers[] = 'Content-type: text/html; charset=iso-8859-1';

     // En-têtes additionnels
     $headers[] = 'To: Mary <mary@example.com>, Kelly <kelly@example.com>';
     $headers[] = 'From: Anniversaire <anniversaire@example.com>';
     $headers[] = 'Cc: anniversaire_archive@example.com';
     $headers[] = 'Bcc: anniversaire_verif@example.com';

     // Envoi
     mail($to, $subject, $message, implode("\r\n", $headers));

0
okbabb Messages postés 57 Date d'inscription samedi 23 avril 2022 Statut Membre Dernière intervention 15 mai 2023
15 mai 2023 à 11:34

Merci Jordane,

Mais le problème que je peux pas mettre tout le code de la page html ou php à l'intérieur de

 $corp = ' ';

J'ai testé et il s'affiche des erreurs lors du chargement de la page,

même si je mettre include or require, le contenu s'affiche dans la même page, et dans l'email s'affiche "1"

le contenu de la page à l'intérieur de "$corp" est :

<!doctype html>
                        <html>
                            <head>
                                <meta charset='utf-8'>
                                <meta name='viewport' content='width=device-width, initial-scale=1'>
                                <title>Snippet - GoSNippets</title>
                                <link href='https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css' rel='stylesheet'>
                                <link href='' rel='stylesheet'>
                                <style> @media screen {
     @font-face {
         font-family: 'Lato';
         font-style: normal;
         font-weight: 400;
         src: local('Lato Regular'), local('Lato-Regular'), url(https://fonts.gstatic.com/s/lato/v11/qIIYRU-oROkIk8vfvxw6QvesZW2xOQ-xsNqO47m55DA.woff) format('woff');
     }

     @font-face {
         font-family: 'Lato';
         font-style: normal;
         font-weight: 700;
         src: local('Lato Bold'), local('Lato-Bold'), url(https://fonts.gstatic.com/s/lato/v11/qdgUG4U09HnJwhYI-uK18wLUuEpTyoUstqEm5AMlJo4.woff) format('woff');
     }

     @font-face {
         font-family: 'Lato';
         font-style: italic;
         font-weight: 400;
         src: local('Lato Italic'), local('Lato-Italic'), url(https://fonts.gstatic.com/s/lato/v11/RYyZNoeFgb0l7W3Vu1aSWOvvDin1pK8aKteLpeZ5c0A.woff) format('woff');
     }

     @font-face {
         font-family: 'Lato';
         font-style: italic;
         font-weight: 700;
         src: local('Lato Bold Italic'), local('Lato-BoldItalic'), url(https://fonts.gstatic.com/s/lato/v11/HkF_qI1x_noxlxhrhMQYELO3LdcAZYWl9Si6vvxL-qU.woff) format('woff');
     }
 }

 /* CLIENT-SPECIFIC STYLES */
 body,
 table,
 td,
 a {
     -webkit-text-size-adjust: 100%;
     -ms-text-size-adjust: 100%;
 }

 table,
 td {
     mso-table-lspace: 0pt;
     mso-table-rspace: 0pt;
 }

 img {
     -ms-interpolation-mode: bicubic;
 }

 /* RESET STYLES */
 img {
     border: 0;
     height: auto;
     line-height: 100%;
     outline: none;
     text-decoration: none;
 }

 table {
     border-collapse: collapse !important;
 }

 body {
     height: 100% !important;
     margin: 0 !important;
     padding: 0 !important;
     width: 100% !important;
     background-color: #f4f4f4;
 }

 /* iOS BLUE LINKS */
 a[x-apple-data-detectors] {
     color: inherit !important;
     text-decoration: none !important;
     font-size: inherit !important;
     font-family: inherit !important;
     font-weight: inherit !important;
     line-height: inherit !important;
 }

 /* MOBILE STYLES */
 @media screen and (max-width:600px) {
     h1 {
         font-size: 32px !important;
         line-height: 32px !important;
     }
 }

 /* ANDROID CENTER FIX */
 div[style*="margin: 16px 0;"] {
     margin: 0 !important;
 }</style>
                                <script type='text/javascript' src=''></script>
                                <script type='text/javascript' src='https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js'></script>
                                <script type='text/javascript' src='https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/js/bootstrap.min.js'></script>
                            </head>
                            <body oncontextmenu='return false' class='snippet-body'>
                            <div style="display: none; font-size: 1px; color: #fefefe; line-height: 1px; font-family: 'Lato', Helvetica, Arial, sans-serif; max-height: 0px; max-width: 0px; opacity: 0; overflow: hidden;"> We're thrilled to have you here! Get ready to dive into your new account. </div>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
    <!-- LOGO -->
    <tr>
        <td bgcolor="#FFA73B" align="center">
            <table border="0" cellpadding="0" cellspacing="0" width="100%" style="max-width: 600px;">
                <tr>
                    <td align="center" valign="top" style="padding: 40px 10px 40px 10px;"> </td>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td bgcolor="#FFA73B" align="center" style="padding: 0px 10px 0px 10px;">
            <table border="0" cellpadding="0" cellspacing="0" width="100%" style="max-width: 600px;">
                <tr>
                    <td bgcolor="#ffffff" align="center" valign="top" style="padding: 40px 20px 20px 20px; border-radius: 4px 4px 0px 0px; color: #111111; font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 48px; font-weight: 400; letter-spacing: 4px; line-height: 48px;">
                        <h1 style="font-size: 48px; font-weight: 400; margin: 2;">Welcome!</h1> <img src=" https://img.icons8.com/clouds/100/000000/handshake.png" width="125" height="120" style="display: block; border: 0px;" />
                    </td>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td bgcolor="#f4f4f4" align="center" style="padding: 0px 10px 0px 10px;">
            <table border="0" cellpadding="0" cellspacing="0" width="100%" style="max-width: 600px;">
                <tr>
                    <td bgcolor="#ffffff" align="left" style="padding: 20px 30px 40px 30px; color: #666666; font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 25px;">
                        <p style="margin: 0;">We're excited to have you get started. First, you need to confirm your account. Just press the button below.</p>
                    </td>
                </tr>
                <tr>
                    <td bgcolor="#ffffff" align="left">
                        <table width="100%" border="0" cellspacing="0" cellpadding="0">
                            <tr>
                                <td bgcolor="#ffffff" align="center" style="padding: 20px 30px 60px 30px;">
                                    <table border="0" cellspacing="0" cellpadding="0">
                                        <tr>
                                            <td align="center" style="border-radius: 3px;" bgcolor="#FFA73B"><a href="#" target="_blank" style="font-size: 20px; font-family: Helvetica, Arial, sans-serif; color: #ffffff; text-decoration: none; color: #ffffff; text-decoration: none; padding: 15px 25px; border-radius: 2px; border: 1px solid #FFA73B; display: inline-block;">Confirm Account</a></td>
                                        </tr>
                                    </table>
                                </td>
                            </tr>
                        </table>
                    </td>
                </tr> <!-- COPY -->
                <tr>
                    <td bgcolor="#ffffff" align="left" style="padding: 0px 30px 0px 30px; color: #666666; font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 25px;">
                        <p style="margin: 0;">If that doesn't work, copy and paste the following link in your browser:</p>
                    </td>
                </tr> <!-- COPY -->
                <tr>
                    <td bgcolor="#ffffff" align="left" style="padding: 20px 30px 20px 30px; color: #666666; font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 25px;">
                        <p style="margin: 0;"><a href="#" target="_blank" style="color: #FFA73B;">https://ts.xx/sdfgd
                    </td>
                </tr>
                <tr>
                    <td bgcolor="#ffffff" align="left" style="padding: 0px 30px 20px 30px; color: #666666; font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 25px;">
                        <p style="margin: 0;">If you have any questions, just reply to this email—we're always happy to help out.</p>
                    </td>
                </tr>
                <tr>
                    <td bgcolor="#ffffff" align="left" style="padding: 0px 30px 40px 30px; border-radius: 0px 0px 4px 4px; color: #666666; font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 25px;">
                        <p style="margin: 0;">Cheers,<br>GoSnippets Team</p>
                    </td>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td bgcolor="#f4f4f4" align="center" style="padding: 30px 10px 0px 10px;">
            <table border="0" cellpadding="0" cellspacing="0" width="100%" style="max-width: 600px;">
                <tr>
                    <td bgcolor="#FFECD1" align="center" style="padding: 30px 30px 30px 30px; border-radius: 4px 4px 4px 4px; color: #666666; font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 25px;">
                        <h2 style="font-size: 20px; font-weight: 400; color: #111111; margin: 0;">Need more help?</h2>
                        <p style="margin: 0;"><a href="#" target="_blank" style="color: #FFA73B;">We&rsquo;re here to help you out</a></p>
                    </td>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td bgcolor="#f4f4f4" align="center" style="padding: 0px 10px 0px 10px;">
            <table border="0" cellpadding="0" cellspacing="0" width="100%" style="max-width: 600px;">
                <tr>
                    <td bgcolor="#f4f4f4" align="left" style="padding: 0px 30px 30px 30px; color: #666666; font-family: 'Lato', Helvetica, Arial, sans-serif; font-size: 14px; font-weight: 400; line-height: 18px;"> <br>
                        <p style="margin: 0;">If these emails get annoying, please feel free to <a href="#" target="_blank" style="color: #111111; font-weight: 700;">unsubscribe</a>.</p>
                    </td>
                </tr>
            </table>
        </td>
    </tr>
</table>
                            <script type='text/javascript'></script>
                            </body>
                        </html>

J'arrive pas à une solution, et merci.

0
jordane45 Messages postés 38213 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 juin 2024 4 678 > okbabb Messages postés 57 Date d'inscription samedi 23 avril 2022 Statut Membre Dernière intervention 15 mai 2023
15 mai 2023 à 13:20

C'est un problème de concaténation....

Tu as des erreurs car tu utilises des simples quotes dans ton code html alors que tu entoures ta variable avec des simple quotes..

Si tu ne comprends pas trop ce que je veux dire, il va falloir que tu apprennes les rudiments du langage PHP et la manipulation des chaînes de caractères.

0
jordane45 Messages postés 38213 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 juin 2024 4 678 > jordane45 Messages postés 38213 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 juin 2024
15 mai 2023 à 13:22

À noter que tu ne peux pas non plus charger de JavaScript à l'intérieur d'un email...

Je t'invite à regarder à nouveau l'exemple que je t'ai donné et essayer de l'adapter à tes besoins.

0