Envoyer un mail depuis un formulaire de contact
Résolu/Fermé
Dnartreb
-
19 févr. 2019 à 18:21
jordane45 Messages postés 38384 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 15 janvier 2025 - 20 févr. 2019 à 13:32
jordane45 Messages postés 38384 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 15 janvier 2025 - 20 févr. 2019 à 13:32
A voir également:
- Envoyer un mail depuis un formulaire de contact
- Yahoo mail - Accueil - Mail
- Envoyer un mail à un groupe de contact gmail - Guide
- Gmail envoyer un mail - Guide
- Formulaire de réclamation facebook - Guide
- Publipostage mail - Accueil - Word
2 réponses
jordane45
Messages postés
38384
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 janvier 2025
4 727
Modifié le 19 févr. 2019 à 20:06
Modifié le 19 févr. 2019 à 20:06
essaye ça
Tu noteras au passage que tu avais des points en trop à la fin des lignes
<?php $destinataire = 'b.guillaume***@hotmail.com'; $expediteur = !empty($_POST['email']) ? $_POST['email'] : NULL; $objet = !empty($_POST['subject']) ? $_POST['subject'] : '', $name = !empty($_POST['name']) ? $_POST['name'] : '', $message = !empty($_POST['message']) ? $_POST['message'] : ''; if(!empty($expediteur) && !empty($objet)){ // si l'utilisateur a saisi des infos... //----------- headers -------------// $headers = "MIME-Version: 1.0 \r\n"; $headers .= 'To: '.$destinataire."\n"; // Mail de reponse $headers .= "From: \"$expediteur\"<$expediteur>"."\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset: utf8\r\n"; //------- message --------------------// $message1 = "L'auteur du mail est: ".htmlspecialchars($name); $message2 = 'Voici son mail: '.htmlspecialchars$message); $msgHtml = "<html> <body> <div> ".$message1." </div> <div> <pre> ".$message2." </pre> </div> </body> </html>"; //- ---------- Envoie du mail --------------// if(mail($destinataire, $objet, $msgHtml, $headers)){ echo '<script languag="javascript" >alert("Votre message a bien été envoyé ");</script>'; header('Location: guillaume.php'); exit(); } else {// Non envoyé echo '<script languag="javascript">alert("Votre message n\'a pas pu être envoyé");</script>'; } } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Nous contacter</title> </head> <body> <br> <form method="post" action=""> <label for="name">Nom:</label> <input type="text" name="name" id="name" required placeholder="Nom" value="<?php echo $name;?>"/> <label for="subject">Objet Du Message:</label> <input type="text" name="subject" id="subject" required placeholder="Sujet" value="<?php echo $objet;?>"/> <label for="email">Email:</label> <input type="email" name="email" id="email" required placeholder="***@***" value="<?php echo $expediteur;?>"/> <label for="message">Message:</label> <textarea name="message" id="message" required>"<?php echo $message;?>"</textarea> <div style="margin-left: 29%;"class="boutton"> <input type="submit" value="Envoyer votre message" /> </div> </form> </body> </html>
Tu noteras au passage que tu avais des points en trop à la fin des lignes
$message1 = "L'auteur du mail est:".$_POST['name'].; $message2 = 'Voici son mail:'.$_POST['message'].;
jordane45
Messages postés
38384
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 janvier 2025
4 727
19 févr. 2019 à 19:11
19 févr. 2019 à 19:11
Bonjour
Commence par ça
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Tu verras apparaître une erreur (au niveau de ta variable headers)
Commence par ça
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Tu verras apparaître une erreur (au niveau de ta variable headers)
Gui4671
Messages postés
33
Date d'inscription
jeudi 24 janvier 2019
Statut
Membre
Dernière intervention
7 avril 2019
19 févr. 2019 à 19:27
19 févr. 2019 à 19:27
J'ai mis le code pour les erreurs trouvés sur ton lien mais quand je tente d'envoyer un message j'ai toujours la même erreur... J'ai modifié deux autres lignes également.
Comment ça je vais avoir voir apparaitre une erreur pour la variable headers? C'est une partie que j'ai copiée sur internet...
Comment ça je vais avoir voir apparaitre une erreur pour la variable headers? C'est une partie que j'ai copiée sur internet...
error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Nous contacter</title> </head> <body> <br> <form method="post" action="guillaume.php"> <label for="name">Nom:</label> <input type="text" name="name" id="name" required placeholder="Nom" /> <label for="subject">Objet Du Message:</label> <input type="text" name="subject" id="subject" required placeholder="Sujet" /> <label for="email">Email:</label> <input type="email" name="email" id="email" required placeholder="email@exemple.com" /> <label for="message">Message:</label> <textarea name="message" id="message" required></textarea> <div style="margin-left: 29%;"class="boutton"> <input type="submit" value="Envoyer votre message" /> </div> </form> <?php $destinataire = 'b.guillaume***@hotmail.com'; $expediteur = !empty($_POST['email']) ? $_POST['email'] : NULL; $objet = !empty($_POST['sbject']) ? $_POST['subjet'] : NULL; $headers .= 'To: '.$destinataire."\n"; // Mail de reponse $headers .= 'From: '.$expediteur.''."\n"; // Expediteur $message1 = "L'auteur du mail est:".$_POST['name'].; $message2 = 'Voici son mail:'.$_POST['message'].; if(mail($destinataire, $objet, $message1, $message2, $headers)) { echo '<script languag="javascript" >alert("Votre message a bien été envoyé ");</script>'; } else // Non envoyé { echo '<script languag="javascript">alert("Votre message n\'a pas pu être envoyé");</script>'; } header('Location: guillaume.php'); ?> </body> </html>
19 févr. 2019 à 19:51
Je n'ai plus qu'à le comprendre pour le futur! Encore merci et passe une bonne soirée :)
20 févr. 2019 à 12:06
$msgHtml =<html> me met erreur.
Que faire
20 févr. 2019 à 13:32