Ce site utilise des cookies pour améliorer uniquement votre expérience utilisateur.
Vous pouvez lire à tout moment comment nous utilisons les cookies sur le site.
Bonjour à tous,
Je suis en train de créer une page reporting dans l'application qui permettra aux utilisateurs d'envoyer un mail avec une pièce jointe. J'ai suivi plusieurs tutoriels sur l'envoie du mail avec PHPMailer, j'ai testé l'envoie du mail dans application et lorsque je clique sur le bouton envoyer il y a un message qui s'affiche mail à bien été envoyé, mais je n'arrive pas à recevoir le mail que j'ai envoyé depuis l'application dans mon compte de Yahoo.
Voici le code :
<?php
use PHPMailer\PHPMailer\PHPMailer;
require "PHPMailer/src/PHPMailerAutoload.php";
require "PHPMailer/src/PHPMailer.php";
require "PHPMailer/src/SMTP.php";
require "PHPMailer/src/Exception.php";
$msg = "";
if(isset($_POST['email']) && isset($_POST['submit'])){
//$email = $_POST['email'];
$email = isset($_POST['email']) ? $_POST['email'] : NULL;
$mdp = $_POST['mdp'];
$sujet = $_POST['sujet'];
$message = $_POST['message'];
$attachement = isset($_POST['attachement']) ? $_POST['attachement'] : NULL;
//$attachement = $_POST['attachement'];
$mail = new PHPMailer();
$mail->isSMTP();
$mail->Host="smtp.mail.yahoo.com";
$mail->SMTPAuth = true;
$mail->Username = "***********@yahoo.fr";
$mail->Password = "password";
$mail->Port = 465; //587
$mail->SMTPSecure = "ssl"; //tls
$mail->isHTML(true);
$mail->setFrom($email);
$mail->addAddress("************@yahoo.fr");
$mail->Subject = $sujet;
$mail->Body = $message;
$mail->addAttachment('dossier/NameFile.pdf', 'NameFile.pdf');
if(!$mail->send()){
$msg = "Mail à été bien envoyé";
}else{
$msg = "Erreur";
}
}
?>
Dans le code j'ai bien précisée mon adresse du mail, mot de passe de mon compte Yahoo et aussi le nom du serveur SMTP de Yahoo, je ne sais pas d'où vient le problème.
Comment je dois faire pour corriger ce problème ?
Merci d'avance pour vos réponses.
Bonjour @Jerem971,
J'ai déjà résolu le problème avec l'aide de ce tuto. Pour corriger ce problème j'ai installé sendmail et ensuite je l'ai configurée avec php.ini
Dans le code que j'ai mis dans le topic j'ai fait des fautes, voici le code que j'ai fait des corrections :
<?php
use PHPMailer\PHPMailer\PHPMailer;
$msg = "";
if(isset($_POST['name']) && isset($_POST['email'])){
$name = $_POST['name'];
$email = $_POST['email'];
$mdp = $_POST['mdp'];
$subject = $_POST['subject'];
$body = $_POST['body'];
$attachement = $_POST['attachement'];
require_once "PHPMailer/PHPMailer.php";
require_once "PHPMailer/SMTP.php";
require_once "PHPMailer/Exception.php";
$mail = new PHPMailer();
//smtp settings;
$mail->isSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->Username = "adresse mail";
$mail->Password = "mot de passe ";
$mail->Port = 587;
$mail->SMTPSecure = "TLS";
//email settings
$mail->isHTML(true);
$mail->setFrom($email, $name);
$mail->addAddress("adresse mail");
$mail->Subject = ("$email ($subject)");
$mail->Body = $body;
$mail->addAttachment('dossier/NameFile.pdf', 'NameFile.pdf');
if($mail->send()){
$status = "success";
$response = "Message à été bien envoyé";
}else{
$status = "failed";
$response = "Il y a une erreur: <br>" . $mail->ErrorInfo;
}
exit(json_encode(array("status" => $status, "response" => $response)));
}
?>
Je te remercie pour ton aide.
Oui c'est exactement ce que je souhaite faire d'une fonctionnalité qui permet d'envoyer un mail avec pièce jointe avec système de feedback.
Re:
Si je comprends bien, il s'agit d'un système de feedback que tu souhaites faire avec la fonctionnalité d'envoie de pièces jointes, est-ce cela ? 🤔
Bonjour @Jerem971,
Je me suis trompé ce n'est pas le formulaire de contact que je suis en train de créer, mais une page reporting qui permettra aux utilisateurs d'envoyer un mail avec une pièce jointe à partir d'une application. J'ai suivi plusieurs tutoriels pour créer la fonctionnalité d’envoyé un mail avec PHPMailer.
J'ai essayée de tester avec mon compte gmail, mais Gmail a bloqué le message ou le mail que j'ai envoyé depuis l'application avec une pièce jointe.
Je m'excuse, car au début je n'ai pas été assez clair d'expliquer le problème que j'ai rencontré, j'ai modifié le topic et j'ai ajouté le code.