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 :

PHPMailer :insertion de lien [PHP 7]


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de RowanMayfair
    Femme Profil pro
    Développeuse Freelance
    Inscrit en
    Mars 2019
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 47
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeuse Freelance

    Informations forums :
    Inscription : Mars 2019
    Messages : 247
    Points : 89
    Points
    89
    Par défaut PHPMailer :insertion de lien
    Bonjour,

    J'ai donc découvert PHPMailer pour l'envoi de mails (qui arrivent ) à partir d'un site internet.
    Des mails du genre de ceux que je vais recevoir quand l'un d'entre vous répondra à ce message.

    Par contre, j'ai un souci avec le lien : si je consulte la boîte mail dans mon navigateur, alors en effet je peux cliquer sur le lien et je suis dirigée vers la page idoine.

    Mais, dans Mozilla Thunderbird (qui a un certain succès - je ne peux donc pas l'ignorer) le lien ne fonctionne pas. Pourtant le mail est bien au format html, le lien est bien en bleu souligné, bref en apparence tout va bien. Sauf que non. Quand je clique il ne se passe rien.
    (alors que quand je clique par exemple sur un lien vers ce forum, il fonctionne parfaitement - donc à priori ce ne sont pas mes paramétrages Thunderbird qui posent problème)

    Un exemple de mail : Nom : Capture.PNG
Affichages : 516
Taille : 28,6 Ko

    Le code de ma fonction sendMail() :
    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
     
    function sendMail($sujet, $message, $destinataires, $expediteur) {
        // Instantiation and passing `true` enables exceptions
        $mail = new PHPMailer(true);
     
        try {
            //Server settings
            $mail->SMTPDebug = 2;                      // Enable verbose debug output
            $mail->CharSet = 'UTF-8';
            $mail->isSMTP();                                            // Send using SMTP
            $mail->Host       = 'blabla.com ';                    // Set the SMTP server to send through
            $mail->SMTPAuth   = true;                                   // Enable SMTP authentication
            $mail->Username   = 'monmail@monprovider.fr';                     // SMTP username
            $mail->Password   = '****';                               // SMTP password
            $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;         // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` encouraged
            $mail->Port       = 465;                                    // TCP port to connect to, use 465 for `PHPMailer::ENCRYPTION_SMTPS` above
     
            //Recipients
            $mail->setFrom('monmail@monprovider.fr', 'Administratrice du site');
     
            $mail->addAddress($destinataires);     // Add a recipient
     
     
            $mail->addReplyTo($expediteur);			// Pour ajouter l'adresse à laquelle répondre (en général celle de la personne ayant rempli le formulaire)
     
            $mail->isHTML(true);                                  // Set email format to HTML
            $mail->Subject = $sujet;
            $mail->Body    = $message ;
            //$mail->AltBody = 'C\est le message, sans balise html par exemple lencodage.fr c\'est le lien';
     
            $mail->send();
     
        } catch (Exception $e) {
            echo "Message n'a pas pu être envoyé : {$mail->ErrorInfo}";
        }
    }
    (Je me suis permise de modifier les informations perso tel que l'adresse mail et le mot de passe)

    Et le code du message :
    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
     
    $message = "Bonjour, <br><br> Vous recevez cet email parce que votre "
                    . "mairie a ajouté votre adresse email, conformément à votre "
                    . "demande, à la liste de celles qui peuvent accéder à l'espace"
                    . "<strong> réservé</strong> du site rizaucourt-buchey.fr. <br>"
                    . "Pour terminer votre inscription, merci de cliquer sur "
                    . "ce lien afin de choisir un mot de passe :<br> "
                    . "<a href='test.site.php' "
                    . "target=_blank> "
                    . "rizaucourt-buchey.fr/inscription</a>.<br><br>"
                    . "Conformément à la loi informatique et liberté, vous "
                    . "pourrez à tout moment supprimer votre "
                    . "email de notre base de données en cliquant sur ce lien : <br>"
                    . "<a href='test.site.php' "
                    . "target=_blank> "
                    . "rizaucourt-buchey.fr/desinscription</a>.<br><br>"
                    . "Vous avez aussi la possibilité de contacter directement"
                    . " votre mairie pour toute suppression ou modification de"
                    . " vos données personnelles.";
    Qu'est-ce qui cloche dans cette histoire ? Mon lien est bien entre des balises <a>, j'ai un target=_blank (je sais pas si c'est utile dans ce cas précis), je n'oublie pas les guillemets ...

    Je sèche.

    D'avance merci de votre aide

  2. #2
    Membre régulier Avatar de RowanMayfair
    Femme Profil pro
    Développeuse Freelance
    Inscrit en
    Mars 2019
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 47
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeuse Freelance

    Informations forums :
    Inscription : Mars 2019
    Messages : 247
    Points : 89
    Points
    89
    Par défaut
    J'ai la solution.

    Pour mettre un lien dans un message, ce n'est pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    "<a href='test.monsite.php' "
                    . "target=_blank> "
                    . "monsite/inscription</a>
    Mais c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    "<a href='https://test.monsite.php' "
                    . "target=_blank> "
                    . "monsite/inscription</a>
    Voilà.

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

Discussions similaires

  1. [PHPMailer] problème de liens
    Par starr dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 13/02/2007, 15h53
  2. [DOM]Problème de liens sous ie
    Par Buster dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/05/2005, 17h13
  3. Problème de lien sur date entre Access et MySQL-4.1
    Par michou42 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 05/04/2005, 00h31
  4. Problème de lien
    Par D-D dans le forum ASP
    Réponses: 10
    Dernier message: 03/06/2004, 18h02

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