Bonjour
J'essaie d'utiliser PHPMail, mais sans grand succès.
Je me retrouve avec le message suivant :
Je vous donne la fonction d'envoi de mail :Erreur lors de l'envoi de l'e-mail : SMTP connect() failed. https://github.com/PHPMailer/PHPMail...roubleshooting
appelée depuis la vue :
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 public function submitContact() { if ($_SERVER['REQUEST_METHOD'] === 'POST') { // Récupérer les données du formulaire $name = $_POST['name']; $email = $_POST['email']; $message = $_POST['message']; // Récupérer l'adresse e-mail du destinataire depuis le fichier de configuration $recipient = monmail@gmail.com; // Envoyer l'e-mail via SMTP Gmail try { $mail = new PHPMailer(); $mail->isSMTP(true); $mail->SMTPDebug = 0; $mail->CharSet = "UTF-8"; $mail->Host = 'smtp.gmail.com'; $mail->SMTPAuth = true; $mail->Username = 'monmail@gmail.com;'; $mail->Password = 'monmotdepassegmail'; // Remplacez par votre mot de passe Gmail $mail->SMTPSecure = 'tls'; $mail->Port = 465; $mail->setFrom($email, $name); $mail->addAddress($recipient); $mail->Subject = 'New Contact Form Submission'; $mail->Body = "Name: $name\nEmail: $email\nMessage: $message"; $mail->send(); // Rediriger l'utilisateur vers une page de confirmation $this->render('confirmation.twig'); exit; } catch (Exception $e) { echo "Erreur lors de l'envoi de l'e-mail : {$mail->ErrorInfo}"; } } }
Code html : 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 {% extends 'base.twig' %} {% block title %}Contact Us{% endblock %} {% block content %} <h1>Noud contacter</h1> <p>N'hésitez pas à nous contacter via le formulaire ci-dessous :</p> <form action="/submit-contact" method="post"> <div class="form-group"> <label for="name">Nom:</label> <input type="text" id="name" name="name" class="form-control" required> </div> <div class="form-group"> <label for="email">Email:</label> <input type="email" id="email" name="email" class="form-control" required> </div> <div class="form-group"> <label for="message">Message:</label> <textarea id="message" name="message" class="form-control" rows="5" required></textarea> </div> <button type="submit" class="btn btn-primary">Envoyer</button> </form> {% endblock %}
par la route (fichier yaml :
Code yaml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 routes: submit_contact: path: /submit-contact controller: ContactController action: submitContact
Merci d'avance
Partager