Je continue de recevoir un message d'erreur lorsque j'essaie d'envoyer un e-mail à l'aide du mailer PHP (localhost). Ou le mailer php ne fonctionnera pas sur localhost ?
<?php //Import PHPMailer classes into the global namespace //These must be at the top of your script, not inside a function use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\SMTP; use PHPMailer\PHPMailer\Exception; require 'src/Exception.php'; require 'src/PHPMailer.php'; require 'src/SMTP.php'; //Load Composer's autoloader require 'vendor/autoload.php'; //Create an instance; passing `true` enables exceptions $mail = new PHPMailer(true); try { //Server settings $mail->SMTPDebug = SMTP::DEBUG_SERVER; //Enable verbose debug output $mail->isSMTP(); //Send using SMTP $mail->Host = 'smtp.gmail.com'; //Set the SMTP server to send through $mail->SMTPAuth = true; //Enable SMTP authentication $mail->Username = 'default@gmail.com'; //SMTP username $mail->Password = '00000120'; //SMTP password // $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; //Enable implicit TLS encryption $mail->Port = 465; //TCP port to connect to; use 587 if you have set `SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS` //Recipients $mail->setFrom('NatsuDragneelxd42069@gmail.com', 'Mailer'); $mail->addAddress('Received@gmail.com', 'Joe User'); //Add a recipient //$mail->addAddress('ellen@example.com'); //Name is optional $mail->addReplyTo('Noreply@gmail.com', 'Info'); // $mail->addCC('cc@example.com'); // $mail->addBCC('bcc@example.com'); //Attachments // $mail->addAttachment('/var/tmp/file.tar.gz'); //Add attachments // $mail->addAttachment('/tmp/image.jpg', 'new.jpg'); //Optional name //Content $mail->isHTML(true); //Set email format to HTML $mail->Subject = 'Here is the subject'; $mail->Body = 'This is the HTML message body <b>in bold!</b>'; $mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; $mail->send(); echo 'Message has been sent'; } catch (Exception $e) { echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}"; }
Voici l'erreur que j'obtiens :
Serveur-> Client : Erreur SMTP : impossible de se connecter à l'hôte SMTP. Le message n'a pas pu être envoyé. Erreur de messagerie : Erreur SMTP : Impossible de se connecter à l'hôte SMTP.
Je ne sais pas pourquoi vous avez commenté cette ligne, mais cela fera échouer la connexion car il tentera d'établir une connexion non cryptée vers un port qui nécessite un cryptage :
Décommentez et vous aurez peut-être plus de chance. Vous pouvez également essayer de définir
SMTPDebug = SMTP::DEBUG_CONNECTION
car il vous donnera plus d'informations sur la phase TLS de la connexion.Cela ne résoudra peut-être pas tout votre problème puisque Gmail (à partir de mai 2022) n'autorise plus l'authentification à l'aide d'un identifiant et d'un mot de passe normaux. Vous devrez passer à XOAUTH2 (pris en charge par PHPMailer) ou créer un mot de passe d'application dans la console Gmail.
Notez également que Gmail ne vous permet d'utiliser aucune adresse, uniquement votre
Tout cela est couvert dans le用户名
adresse et un alias prédéfini.Guide de dépannage PHPMailer.