c'était cette ligne : if (($nom != '') && ($societe != '')&& ($email != '') && ($telephone != '') && ($message != ''))
les informations societé et téléphone n'étant pas utilisé dans le mail autant les virer de toutes façon.
sinon tu construit dynamiquement le message.
mon code, avec téléphone et société non obligatoire mais dans le message quand même
<?php
$destinataire = '[email protected]';
$message_envoye = "Votre message nous est bien parvenu !";
$message_erreur_formulaire = "Vous devez d'abord <a href=\"contact.html\">envoyer le formulaire</a>.";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";
$objet = 'l\'objet du mail';
if (!empty($_POST['submit']))
{
if (!empty($_POST['name']) && !empty($_POST['email']) && !empty($_POST['message']))
{
$headers[] = 'MIME-Version: 1.0';
$headers []= 'From:'.$_POST['name'].' <'.$_POST['email'].'>' ;
$headers []= 'Reply-To:'.$_POST['email'];
$headers []= 'Content-Type: text/plain; charset="utf-8"; DelSp="Yes"; format=flowed ';
$headers []= 'Content-Disposition: inline';
$headers []= 'Content-Transfer-Encoding: 7bit';
$headers []= 'X-Mailer:PHP/'.phpversion();
if (!empty($_POST['copie']) && $_POST['copie'] == 'oui')
{
// copie cachée pour toi
$headers [] ='Bcc: ' + $destinataire;
// destinataire de l'email le gens qui soumet le formulaire
$destinataire = $_POST['email'];
}
echo '<p>';
$message = $_POST['message'];
if(!empty($_POST['societe'])){
$message .= PHP_EOL.'Société : '.$_POST['societe'];
}
if(!empty($_POST['telephone'])){
$message .= PHP_EOL.'Téléphone : '.$_POST['telephone'];
}
if (mail($destinataire, $objet, $_POST['message'], implode("\r\n",$headers))){
echo $message_envoye;
}else {
echo $message_non_envoye;
}
echo '</p>';
}
else
{
echo '<p>',$message_formulaire_invalide.'</p>',PHP_EOL;
}
}
?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Formulaire de contact</title>
<link href="form.css" rel="stylesheet" type="text/css"/>
<style type="text/css">
.title {
margin-bottom: 2em;
}
.contactForm{
margin : 0 2em;
}
label {
width : 100px;
text-align : right;
display:inline-block;
vertical-align: top;
}
.input {
margin-bottom :2em;
}
input[class="submit"]{
margin-top : 2em;
margin-left: 100px;
width:200px;
}
</style>
</head>
<body>
<nav id="navigation">
<ul>
<li> <a href="index.html" target="new">Accueil</a> </li>
<li> <a href="prestations.html" target="new">Prestations</a> </li>
<li> <a href="qui-suis-je.html" target="new">Qui suis-je</a> </li>
<li> <a href="livre-d-or.html" target="new">Livre d'Or</a> </li>
<li> <a href="form.html" target="new">Contact</a> </li>
</ul>
</nav>
<div id="contenu">
<div class="title">Formulaire de contact</div>
<form method="post">
<p class="contactForm">
<label for="name">Nom*:</label>
<input type="text" id="name" name="name" class="input" required />
<br />
<label for="société">Société:</label>
<input type="text" id="société" name="societe" class="input" />
<br />
<label for="email">Adresse email*:</label>
<input type="email" id="email" name="email" class="input" required />
<br />
<label for="téléphone">Téléphone/Fax:</label>
<input type="tel" id="téléphone" name="telephone" class="input" pattern="^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,5})|(\(?\d{2,6}\)?))(-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$" />
<br />
<label for="msg">Votre message*:</label>
<textarea id="msg" name="message" class="msg" rows="10" cols="32" required></textarea>
<br/>
<input type="submit" class="submit" name="submit" value="Envoyer">
</p>
</form>
</div>
<div id="footer">
<p><img src="images/twitter.png" alt="logo twitter" height="15" /> droits réservés ©Serveur à la carte - 2017 <img src="images/facebook.png" alt="logo acebook" height="15" /></p>
</div>
</body>
</html>
@+