Bonjour,
J'ai un formulaire de contact qui fonctionne très bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<!-- formulaire HTML -->
<form onsubmit="return validateFormOnSubmit(this)" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<ul>
    <li>
        <label for="pseudo">Nom</label>
        <input type="text" name="pseudo" id="pseudo" />
    </li>
    <li>
        <label for="email">Email</label>
        <input type="text" name="email" id="email" />
    </li>
    <li>
        <label for="objet">Objet</label>
        <input type="text" name="objet" id="objet" />
    </li>
    <li>
        <label for="message">Message</label>
        <textarea name="message" id="message"  cols="" rows="10"></textarea>
    </li>
    <li style="text-align:center">
        <button type="submit" id="envoyer" name="envoyer" value="Envoyer">Envoyer</button>
    </li>
</ul>
</form>
<!-- // formulaire HTML -->
 
<?php
if (isset($_POST['envoyer'])) // Si le formulaire a été soumis
{
  // On sécurise les données avant de les récupérer */
  $pseudo = htmlentities(stripslashes($_POST['pseudo'])); // pseudo
  $email = htmlentities(stripslashes($_POST['email'])); // email
  $objet = htmlentities(stripslashes($_POST['objet'])); // objet
  $message = htmlentities(stripslashes($_POST['message'])); // message
// Formattage du mail à envoyer avec la syntaxe Heredoc dans $html
$html = <<<EOD
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
 
<head>
</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
  *{margin:0;padding:0}
  body{background:#f2f2f2}
  #wrapper{-moz-border-radius:10px;background:#fff;border:1px solid #9c9c9c;margin:10px auto;padding:10px;position:relative;width:500px}
</style>
 
</head>
 
<body>
<div id="wrapper">
<p style="background-color:#424242;color:#fff;margin:0 0 15px;padding:0">
  Pseudo : {$pseudo} 
  Objet : {$objet} 
  De : {$email}
 
 
{$message}
</div>
<p style="text-align:center">
Ce message vous a été envoyé depuis monsite
 
</body>
 
</html>
EOD;
  $destEmail = "mail@mail.fr"; // Email du destinataire
 
  $entete  = 'MIME-Version: 1.0' . "\r\n"; // Format de données standard MIME
  $entete .= 'Content-type: text/html; charset=utf-8' . "\r\n"; // Message au format HTML encodé en utf-8
  $entete .= 'From: Prenom Nom <expediteur@example.com>' . "\r\n"; // Personnalisation de l'expéditeur
 
  if ( @mail($destEmail,$objet,$html,$entete) ) // Si le mail a bien été envoyé
  {
    echo "
<p style=\"text-align:center;font-weight:700;color:green\">Votre message a bien été envoyé !
   
 
";
  }
  else  // Sinon erreur d'envoi
  {
    echo "
<p style=\"text-align:center;font-weight:700;color:red\">Un problème s'est produit lors de l'envoi du message.\n";
    echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez...</a>
 
\n";
  }
}
?>
Je voudrais par contre que lorsqu'on clique sur "envoyer" la page ne se recharge pas car sur des page du style index.php?id=5 cela me renvoie à la page index.php

Merci de votre aide !