Message de validation d'envoie de formulaire

Résolu
Bonjour,

Mon site est achevé, il me manque néanmoins un dernier petit détail. J'ai mon formulaire de contact et j'aimerai qu'une fois le formulaire envoyé, qu'un message de confirmation d'envoie s'affiche sur mon site Web.

Voici mon code php d'envoie de formulaire :
<?php


// Le message
$message = "Vous avez recu une nouvelle demande de contact sur votre site internet\n\n";

$message .= ' Nom : '.$_POST['name'];
$message .= ' E-mail : '.$_POST['email'];
$message .= ' Sujet : '.$_POST['subject'];
$message .= ' Message : '.$_POST['message'];

$to      = 'contact@...';
     $subject = 'Demande de contact';
     $headers = 'From: contact@...' . "\r\n" .
     'Reply-To: contact@...' . "\r\n" .
     'X-Mailer: PHP/' . phpversion();

    

    if(!empty($_POST['g-recaptcha-response']))
    { 
// Envoi du mail
if(mail($to, $subject, $message, $headers))
{
	header('Location:index.php#contact?message=succes');
}
else
{
	echo 'erreur';
}
}
else
{
	echo 'capctha incorrect';
}

?>

2 réponses

  1. Modérateur
    Bonjour,

    Oui et ?

    Il semble que tu fasses une redirection avec une variable "message=success".
    Pourquoi n'utilises tu pas cette variable ?
    (que tu peux récupérer via $_GET )

    Sinon,
    Avant de faire ta redirection... tu peux utiliser du Javascript pour afficher le message

    // Envoi du mail
    if(mail($to, $subject, $message, $headers)) {
    
       echo "
       <script type='text/javascript'>
          alert('Message envoyé'); // ou tout autre moyen d'afficher comme tu veux...
          setTimeout(function (){
             window.location.href = 'index.php#contact?message=succes';
          }, 2000);
       </script>  ";
    
    }
    


    1. Bonjour,

      excusez-moi, j'étais sûr d'avoir répondu à ta réponse en te remerciant mais je vois que du coup j'avais oublié :/

      Mais en tout cas merci, ton code m'a beaucoup aidé :)
      1. Modérateur
        Ce fut avec plaisir.