* Il vous manque un bout au niveau de
<table> (la fin de la table ainsi que de l'instruction).
* Disons que là vous sécurisez à minima par des htmlspecialchars() mais vous pourriez aller bien plus loin.
* vous conditionnez $errors mais cette variable sera systématiquement vide en l'état. Je ne vois aucun intérêt à cette condition qui fourmille de bêtises et qui n'est jamais fermée.
* Quel est l'intérêt de
$_SESSION['success'] = 1; ? A priori aucun !
* "emmerdant" ? Je ne me serais pas permis
Pour résumer, un bon départ serait:
<?php
session_start();//on démarre la session ; obligatoire si on souhaite utiliser $_POST et $_SESSION
/** On prend l'habitude de traiter les données reçues en amont du script afin d'y appliquer nos filtres de sécurisation (voir autres sujets du forum pour plus de détail) **/
$email = htmlspecialchars($_POST['email']);
$name = htmlspecialchars($_POST['name']);
$message = htmlspecialchars($_POST['message']);
/** reset des données envoyées **/
unset($_POST);
/** Création du courriel **/
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= 'FROM:' . $email;
$to = 'contact@6ro.fr'; // Insérer votre adresse email ICI
$subject = 'Message envoyé par ' . $name;
$message_content = '
<table>
<tr>
<td><b>Emetteur du message:</b></td>
</tr>
<tr>
<td>'. $subject . '</td>
</tr>
<tr>
<td><b>Contenu du message:</b></td>
</tr>
<tr>
<td>'. $message .'</td>
</tr>
</table>
';
/** envoi du courriel **/
if (mail($to, $subject, $message_content, $headers)) {
$frontMsg = 'Your mail was correctly sent, thank you!';
$frontLink = '<a href="home.html">Return Home</a>';
} else {
$frontMsg = 'An error has occurs. Your message doesn\'t have been sent!';
$frontLink = '<a href="contact.html">Return Form</a>';
}
/** Affichage du message pour l'utilisateur **/
echo '<div>', $frontMsg, '</div>';
echo '<p>', $frontLink, '</p>';
?>
Modifié par Greg_Lumiere (31 Dec 2018 - 13:48)