Envoyer données d'un formulaire vers mon adresse mail
Fermé
Harpartapsc07
Messages postés
58
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
28 juin 2024
-
Modifié par Harpartapsc07 le 18/02/2017 à 14:43
yg_be Messages postés 23416 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 3 janvier 2025 - 19 févr. 2017 à 19:25
yg_be Messages postés 23416 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 3 janvier 2025 - 19 févr. 2017 à 19:25
A voir également:
- Envoyer les données d'un formulaire html par mail sans php
- Yahoo mail - Accueil - Mail
- Publipostage mail - Accueil - Word
- Gmail envoyer un mail - Guide
- Formulaire de réclamation facebook - Guide
- Mail sos carte - Forum Vos droits sur internet
3 réponses
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
4 722
18 févr. 2017 à 20:19
18 févr. 2017 à 20:19
Bonjour,
Premier souci.. tu n'as pas mis d'attributs "name" à tes éléments html... tu n'as mis que des ID .. hors ça ne suffira pas.
Par exemple :
A remplacer par :
Une fois que tu auras corrigé ça sur tes autres éléments.. tu pourras récupérer leurs valeur (via la variable $_POST) lorsque tu cliqueras sur le bouton submit en utiliasant la syntaxe :
Pour finir, si ton hébergeur ne permet pas d'utiliser la fonction "mail" .. tu peux essayer d'utiliser la class phpmailer
que tu peux récupérer ici :
https://github.com/PHPMailer/PHPMailer
Puis, pour envoyer un mail (en utilisant un compte gmail par exemple) tu peux faire :
Premier souci.. tu n'as pas mis d'attributs "name" à tes éléments html... tu n'as mis que des ID .. hors ça ne suffira pas.
Par exemple :
<input type="text" id="nom" />
A remplacer par :
<input type="text" id="nom" name="nom" />
Une fois que tu auras corrigé ça sur tes autres éléments.. tu pourras récupérer leurs valeur (via la variable $_POST) lorsque tu cliqueras sur le bouton submit en utiliasant la syntaxe :
<?php //xn--rcupration-b7ad des varaibles : $nom = isset($_POST['nom']) ? $_POST['nom'] : ""; //idem pour les autres champs...
Pour finir, si ton hébergeur ne permet pas d'utiliser la fonction "mail" .. tu peux essayer d'utiliser la class phpmailer
que tu peux récupérer ici :
https://github.com/PHPMailer/PHPMailer
Puis, pour envoyer un mail (en utilisant un compte gmail par exemple) tu peux faire :
require_once('../class.phpmailer.php'); //include("class.smtp.php"); // optional, gets called from within class.phpmailer.php if not already loaded $mail = new PHPMailer(); $body = file_get_contents('contents.html'); $body = eregi_replace("[\]",'',$body); $mail->IsSMTP(); // telling the class to use SMTP $mail->Host = "mail.yourdomain.com"; // SMTP server $mail->SMTPDebug = 2; // enables SMTP debug information (for testing) // 1 = errors and messages // 2 = messages only $mail->SMTPAuth = true; // enable SMTP authentication $mail->SMTPSecure = "tls"; // sets the prefix to the servier $mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server $mail->Port = 587; // set the SMTP port for the GMAIL server $mail->Username = "yourusername@gmail.com"; // GMAIL username $mail->Password = "yourpassword"; // GMAIL password $mail->SetFrom('name@yourdomain.com', 'First Last'); $mail->AddReplyTo("name@yourdomain.com","First Last"); $mail->Subject = "PHPMailer Test Subject via smtp (Gmail), basic"; $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test $mail->MsgHTML($body); $address = "whoto@otherdomain.com"; $mail->AddAddress($address, "John Doe"); $mail->AddAttachment("images/phpmailer.gif"); // attachment $mail->AddAttachment("images/phpmailer_mini.gif"); // attachment if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Message sent!"; }
19 févr. 2017 à 11:44
Merci pour ta réponse j'ai ajouté les attributs manquants comme tu m'as demandé de le faire, voila ce que ca donné:
<form action="/..." method="post">
<div>
<label for="nom">Nom :</label>
<input type="text" id="nom" name="nom" />
</div>
<div>
<label for="courriel"> E-mail :</label>
<input type="email" id="courriel" name="courriel" />
</div>
<div>
<label for="message">Message :</label>
<textarea id="message" name="message"></textarea>
</div>
<div class="button">
<button type="submit">Envoyer votre message</button>
</div>
mais je me suis rendu compte que mon hébergeur ne propose pas l'option PHP mailer dans mon option gratuite, ainsi j'ai décider d'envoyer les données du formulaire dans une base de données que je n'ai pas encore crée. Peux-tu m'expliquer comment faire et ce que je dois écrire dans <form action=??? method="post"> ?
Merci beaucoup!
19 févr. 2017 à 12:19
19 févr. 2017 à 12:26
alors la syntaxe
<?php
//xn--rcupration-b7ad des varaibles :
$nom = isset($_POST['nom']) ? $_POST['nom'] : "";
//
je dois la mettre ou exactement? dans mon fichier html juste en dessous du formulaie ou dans un nouveau fichier php?
19 févr. 2017 à 12:32