Comment mettre un formul envoyer qui renvoie sur une adresse mai

Fermé
silverboy95 Messages postés 14 Date d'inscription samedi 15 mars 2014 Statut Membre Dernière intervention 24 février 2015 - Modifié par silverboy95 le 2/04/2014 à 10:40
Nexii Messages postés 333 Date d'inscription jeudi 13 mars 2014 Statut Membre Dernière intervention 14 mars 2017 - 8 avril 2014 à 16:56
Bonjour j'ai un petit soucis car j'ai un code HTML qui contient un formulaire de contact avec un bouton envoyer et annuler, et je voudrais rediriger le formulaire envoyer vers une adresse mail mais on ma dit d'utiliser du PHP mais je sais pas.
<!DOCTYPE HTML>

<html>

<head>
<title></title>
<meta charset="utf-8"/>
<link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>
<ul>
<li><a href="loc simply.html">
<INPUT TYPE="SUBMIT" VALUE="Acceuil"></a>
</FORM></li>
<li><a href="logo.html">
<INPUT TYPE="SUBMIT" VALUE="Voiture"></a>
</FORM></li>
<li><FORM ACTION="Conditions.html">
<INPUT TYPE="SUBMIT" VALUE="Conditions"></a>
</FORM></li>
<li><FORM ACTION="Recherche.html">
<INPUT TYPE="SUBMIT" VALUE="Recherche"></a>
</FORM></li>
<li><FORM ACTION="Contact.html">
<INPUT TYPE="SUBMIT" VALUE="Contact"></a>
</FORM></li>
</ul>
<FONT color="slategray">
<br/><br/><br/><br/><br/><br/>
<h1><center>Contact</h1><br/><br/>
<table>
<Align=center>
<TR>
<TD>Civilité</TD>
<TD><Input type="text" name="civil"></TD>
</TR>
<TR>
<TD>Nom</TD>
<TD><Input type="text" name="nom"></TD>
</TR>
<TR>
<TD>Prénom</TD>
<TD><Input type="text" name="prenom"></TD>
</TR>
<TR>
<TD>Adresse</TD>
<TD><Input type="text" name="adrue"></TD>
</TR>
<TR>
<TD>Code Postale</TD>
<TD><Input type="number" name="cp"></TD>
</TR>
<TR>
<TD>Ville</TD>
<TD><Input type="text" name="ville"></TD>
</TR>
<TR>
<TD>Pays</TD>
<TD><Input type="text" name="pays"></TD>
</TR>
<TR>
<TD>N° de Téléphone</TD>
<TD><Input type="tel" name="rs"></TD>
</TR>
<TR>
<TD>Adresse Email</TD>
<TD><Input type="email" name="admail"></TD>
</TR>
<TR>
<TD>Motif de Contact</TD>
<TD><textarea name="motif de contact" id="mc"></textarea></TD>
</TR>
<TR>

</Table>
<center><input type="reset" value="Annuler" />
<input type="submit" value="Envoyer"/></center>
<br/><a href="loc simply.html">Retour à l'acceuil</a>
</BODY>
</HTML>
A voir également:

2 réponses

Nexii Messages postés 333 Date d'inscription jeudi 13 mars 2014 Statut Membre Dernière intervention 14 mars 2017 550
2 avril 2014 à 17:13
Salut !

Alors pour envoyer ton formulaire par mail c'est très simple mais il faut utiliser du PHP.
Comme tu l'a préciser tu n'y connais rien je vais essayé de t'expliquer ça le plus simplement du monde.

Donc tu as ton formulaire:


le code html est :

<form name="monformulaire">

</form>

et a l'interieur de ces deux balises tu met tes divers champ texte :

<input type="text" name="champtexte1">
<input type="text" name="champtexte2">
etc...

et un bouton envoyer

<input type="submit" value="envoyer">

Pour récupérer les infos de ton formulaire il faut d'abord indiquer quelle page va s'occuper de ça .
donc dans la balise <form> il faut rajouter ceci :

<form name="monformulaire" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">

"action" permet de spécifier la page a appeler et $_SERVER['PHP_SELF'] est du code php qui fait que la pge va s'appeller elle-meme.
"method" permet de specifier comment on envoye les données (si elles s'affichent dans la barre d'adresse ou non) ici ce sera invisible mais si tu veu tester remplace post par get et tu verra tes données dans la barre d'adresse.

Je vais récapituler :

Maintenant tu as ton formulaire et quand tu clic sur "envoyer" la page s'appelle elle-meme.

maintenant il faut tester (en PHP) si des données ont été envoyées

donc avant tout code html (donc au dessus de la balise <html> ecrit ceci :
<?php 
if($_POST) { 

$message = $_POST['champtexte1']; 

} 
?> 

Explication : Ici tu a testé si la page a récupérer quelque chose et tu as stocké dans la variable $message ce que l'on a tapé dans le champ texte.

Donc si tu a plusieurs champs texte tu fait :

$message=$_POST['champtexte1'];
$message .=$_POST['champtexte2'];
$message .=$_POST['champtexte3'];



Ensuite tu n'a plus qu'a utiliser la fonction mail :


mail("destinataire@domain.com", "sujet du courrier", $message, "From: emetteur@domain.com") ;



Voilà je vais récapituler le code de la page :

<?php
if($_POST) {

$message=$_POST['champtexte1'];
$message .=$_POST['champtexte2'];
$message .=$_POST['champtexte3'];

mail("destinataire@domain.com", "sujet du courrier", $message, "From: emetteur@domain.com") ;

}
?>
<html>
...
...
...
<form name="aaaa" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
<input type="text" name="champtexte1">
<input type="text" name="champtexte2">
etc...

<input type="submit" value="envoyer">
</form>
0
silverboy95 Messages postés 14 Date d'inscription samedi 15 mars 2014 Statut Membre Dernière intervention 24 février 2015
2 avril 2014 à 23:18
Super bonne reponse je te remercie beaucoup voila se que sa donne d'après ton explication je l'est mi au format html:
<?php
if($_POST) {

$message=$_POST['champtexte1'];
$message .=$_POST['champtexte2'];
$message .=$_POST['champtexte3'];
$message .=$_POST['champtexte4'];
$message .=$_POST['champtexte5'];
$message .=$_POST['champtexte6'];
$message .=$_POST['champtexte7'];
$message .=$_POST['champtexte8'];

mail("destinataire@domain.com", "sujet du courrier", $message, "From: tahsin.donmezz@gmail.com") ;

}
?>
<html>
<head>
<title></title>
<meta charset="utf-8"/>
<link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>
<ul>
<li><a href="loc simply.html">
<INPUT TYPE="SUBMIT" VALUE="Acceuil"></a>
</FORM></li>
<li><a href="logo.html">
<INPUT TYPE="SUBMIT" VALUE="Voiture"></a>
</FORM></li>
<li><FORM ACTION="Conditions.html">
<INPUT TYPE="SUBMIT" VALUE="Conditions"></a>
</FORM></li>
<li><FORM ACTION="Recherche.html">
<INPUT TYPE="SUBMIT" VALUE="Recherche"></a>
</FORM></li>
<li><FORM ACTION="Contact.html">
<INPUT TYPE="SUBMIT" VALUE="Contact"></a>
</FORM></li>
</ul>
<FONT color="slategray">
<br/><br/><br/><br/><br/><br/>
<h1><center>Contact</h1><br/><br/>
<table>
<Align=center>

<form name="aaaa" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
<input type="text" name="Civilité">
<input type="text" name="Nom">
<input type="text" name="Adresse">
<input type="text" name="Code Postale">
<input type="text" name="Ville">
<input type="tel" name="Téléphone">
<input type="email" name="Email">
<input type="text" name="Commentaire">
</Table>
<center><input type="reset" value="Annuler" />
<input type="submit" value="Envoyer"/></center>
<br/><a href="loc simply.html">Retour à l'acceuil</a>
</form>
</BODY>
</HTML>
0
Nexii Messages postés 333 Date d'inscription jeudi 13 mars 2014 Statut Membre Dernière intervention 14 mars 2017 550
3 avril 2014 à 09:45
Tes champs
<input>
doivent contenir un attribut "name" et cette le nom que tu donne à ce name que tu remplacer dans le code PHP les "champtexte1", "champtexte2" etc..
Exemple avec ton code :
<?php
if($_POST) {

$message=$_POST['Civilité'];
$message .=$_POST['Nom'];
$message .=$_POST['Adresse'];
$message .=$_POST['CodePostal'];
$message .=$_POST['Ville'];
$message .=$_POST['Téléphone'];
etc...

REMPLACER DESTINATAIRE@DOMAIN.COM PAR TON ADRESSE MAIL
mail("destinataire@domain.com", "sujet du courrier", $message, "From: tahsin.donmezz@gmail.com") ;

}
?>
<html>
<head>
<title></title>
<meta charset="utf-8"/>
<link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>
<ul>
<li><a href="loc simply.html">
<INPUT TYPE="SUBMIT" VALUE="Acceuil" ></a>
</FORM></li>
<li><a href="logo.html">
<INPUT TYPE="SUBMIT" VALUE="Voiture"></a>
</FORM></li>
<li><FORM ACTION="Conditions.html">
<INPUT TYPE="SUBMIT" VALUE="Conditions"></a>
</FORM></li>
<li><FORM ACTION="Recherche.html">
<INPUT TYPE="SUBMIT" VALUE="Recherche"></a>
</FORM></li>
<li><FORM ACTION="Contact.html">
<INPUT TYPE="SUBMIT" VALUE="Contact"></a>
</FORM></li>
</ul>
<FONT color="slategray">
<br/><br/><br/><br/><br/><br/>
<h1><center>Contact</h1><br/><br/>
<table>
<Align=center>

<form name="aaaa" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
<input type="text" name="Civilité">
<input type="text" name="Nom">
<input type="text" name="Adresse">
<input type="text" name="CodePostal">
<input type="text" name="Ville">
<input type="tel" name="Téléphone">
etc...
<input type="email" name="Email">
<input type="text" name="Commentaire">
</Table>
<center><input type="reset" value="Annuler" />
<input type="submit" value="Envoyer"/></center>
<br/><a href="loc simply.html">Retour à l'acceuil</a>
</form>
</BODY>
</HTML>
0
silverboy95 Messages postés 14 Date d'inscription samedi 15 mars 2014 Statut Membre Dernière intervention 24 février 2015
3 avril 2014 à 10:15
Super merci beaucoup, et je mets quoi dans name ici :
<form name="aaaa" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post"> .
Et donc je receverais le formulaire dans ma boite mails ?
0
Nexii Messages postés 333 Date d'inscription jeudi 13 mars 2014 Statut Membre Dernière intervention 14 mars 2017 550
3 avril 2014 à 11:51
Essaye le tu verras bien !
le "name" tu lui donne le nom que tu veux :)
0
silverboy95 Messages postés 14 Date d'inscription samedi 15 mars 2014 Statut Membre Dernière intervention 24 février 2015 > Nexii Messages postés 333 Date d'inscription jeudi 13 mars 2014 Statut Membre Dernière intervention 14 mars 2017
3 avril 2014 à 17:16
Sa ne fonctionne pas mon formulaire et ml organise à gauche, il n'y a ps écrit les nom des champs et sa n'envoie pas de mail .....
0
Nexii Messages postés 333 Date d'inscription jeudi 13 mars 2014 Statut Membre Dernière intervention 14 mars 2017 550
Modifié par Nexii le 4/04/2014 à 10:22
La mise en page du formulaire se fait en CSS.
Pour les noms des champs, soit tu veux que ça s'affiche au dessus, dans ce cas tu places ton code avant la balise <input> en pensant à bien la fermer, soit tu pré-rentre une valeur dans le champ texte :

Exemple :
<p> Civilité :</p>
<input type="text" name="Civilité"/>


ou

<input type="text" name="Civilité" value="Civilité"/>


Tu n'as pas l'air très bien formé en HTML.. Je te conseil de faire des tutos pour bien comprendre son fonctionnement :
https://j-willette.developpez.com/tutoriels/html/les-bases-du-html/?page=page_1
0
silverboy95 Messages postés 14 Date d'inscription samedi 15 mars 2014 Statut Membre Dernière intervention 24 février 2015
4 avril 2014 à 11:01
Et donc je mets quoi dans la feuille de style pour que ca fonctionne bien ?
0
Nexii Messages postés 333 Date d'inscription jeudi 13 mars 2014 Statut Membre Dernière intervention 14 mars 2017 550
4 avril 2014 à 11:49
Ca c'est à toi de le faire, je vais pas te faire ta page HTML !
Va apprendre HTML/CSS, tu pourra pas bricoler une page en prenant des infos à gauche à droite, acquiert déjà les bases !
0
silverboy95 Messages postés 14 Date d'inscription samedi 15 mars 2014 Statut Membre Dernière intervention 24 février 2015
7 avril 2014 à 22:49
Donc j'ai reussi a centre a tout afficher etc ... mais ca ne fonctionne pas j'arrive pas a envoyer et voici mon code <?php
if($_POST) {

$message .=$_POST['Civilite'];
$message .=$_POST['Nom'];
$message .=$_POST['Prenom'];
$message .=$_POST['Adresse'];
$message .=$_POST['Code Postal'];
$message .=$_POST['Ville'];
$message .=$_POST['Telephone'];
$message .=$_POST['Email'];
$message .=$_POST['Commentaire'];

mail("tahsin.donmezz@gmail.com", "sujet du courrier", $message, "From: emetteur@domain.com") ;

}
?>
<html>

<head>
<title></title>
<meta charset="utf-8"/>
<link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>
<br><br><br><br>
<header>
<nav>
<ul>
<a href="loc simply.html" class="push_button">
Acceuil</a>
<a href="logo.html" class="push_button">
Voiture</a>
<a href="logo.html" class="push_button">
Recherche</a>
<a href="Conditions.html" class="push_button">
Conditions</a>
<a href="Contact.html" class="push_button">
Contact</a>
</ul>
</nav>
</header>
<FONT color="slategray">
<h1><center>Contact</h1><br/><br/>
<div align="center">
<table>
<FONT color="slategray">

<form name="aaaa" action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
<TR>
<TD>Civilite</TD>
<TD><input type="text" name="Civilite"></TD>
</TR>
<TR>
<TD>Nom</TD>
<TD><Input type="text" name="Nom"></TD>
</TR>
<TR>
<TD>Prenom</TD>
<TD><Input type="text" name="Prenom"></TD>
</TR>
<TR>
<TD>Adresse</TD>
<TD><Input type="text" name="Adresse"></TD>
</TR>
<TR>
<TD>Code Postal</TD>
<TD><Input type="number" name="Code Postal"></TD>
</TR>
<TR>
<TD>Ville</TD>
<TD><Input type="text" name="Ville"></TD>
</TR>
<TR>
<TD>Téléphone</TD>
<TD><Input type="tel" name="Téléphone"></TD>
</TR>
<TR>
<TD>Email</TD>
<TD><Input type="email" name="Email"></TD>
</TR>
<TR>
<TD>Motif de Contact</TD>
<TD><textarea name="Commentaire" id="Commentaire"></textarea></TD>
</TR>
<TR>
</Table>
</div>

<center><input type="reset" value="Annuler" />
<input type="submit" value="Envoyer"/></center>
<br/><a href="loc simply.html">Retour à l'acceuil</a>
</form>
</BODY>
</HTML>
Et la voici le code d'erreur;

Notice: Undefined index: Civilite in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\new 2jn.php on line 4

Notice: Undefined variable: message in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\new 2jn.php on line 4

Notice: Undefined index: Prenom in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\new 2jn.php on line 6

Notice: Undefined index: Code Postal in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\new 2jn.php on line 8

Notice: Undefined index: Telephone in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\new 2jn.php on line 10

Warning: mail(): Failed to connect to mailserver at "127.0.0.1" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\Program Files (x86)\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\new 2jn.php on line 14
0
Nexii Messages postés 333 Date d'inscription jeudi 13 mars 2014 Statut Membre Dernière intervention 14 mars 2017 550
8 avril 2014 à 16:56
Tiens essaye de te baser sur ce tuto :
http://www.6ma.fr/tuto/formulaire-php-et-envoi-par-email/

Essaie aussi en hébergeant ton site, peu-être un problème si tu le test en localhost ?
0