Dépannage du problème d'en-tête « De » dans PHP Mail
Dans le développement de sites Web, l'envoi d'e-mails aux utilisateurs lors de l'inscription est une tâche courante. Cependant, rencontrer des problèmes avec l’en-tête « From » peut être frustrant. Un développeur rencontrant un tel problème a demandé conseil pour envoyer des e-mails aux utilisateurs lors de l'inscription, présentant son code PHP :
$to = "[email protected]"; $subject = "Test mail"; $message = "Hello! \nThis is a simple email message."; $headers = "From: [email protected]"; $headers .= "\r\nReply-To: [email protected]"; $headers .= "\r\nX-Mailer: PHP/".phpversion(); mail($to,$subject,$message,$headers); echo "Mail Sent.";
Cependant, le problème est survenu lorsque l'e-mail envoyé affichait l'en-tête "De" comme [email protected] , alors que l'en-tête "Reply-To" a été correctement défini comme spécifié. Le nœud du problème résidait dans le nom d'hôte du serveur hébergeant le site Web, qui était box123.bluehost.com.
Après enquête, il a été révélé que le développeur tentait d'utiliser une adresse Gmail comme "De " valeur. Malheureusement, il est peu probable qu’une telle approche aboutisse. Comme l'explique un fournisseur de solutions :
"Cela ne fonctionnera pas et le FAI a raison de l'écraser. Si vous souhaitez rediriger les réponses à vos messages sortants, utilisez la réponse."
Pour corriger ce problème, il a été conseillé au développeur d'utiliser l'en-tête "Reply-To" pour rediriger les réponses. De plus, une solution de contournement pour résoudre le problème des adresses valides a été fournie :
mail($to,$subject,$message,$headers,"-f [email protected]");
En ajoutant un cinquième paramètre à la commande mail(), le développeur a pu remédier au problème d'en-tête "From" et s'assurer que l'e-mail a été envoyé avec succès.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!