Avoir une pop-up après envoie de mail

Par Prescillia Nierichlo, il y a 12 ans


Bonjour à tous !
Actuellement j'ai un formulaire en plusieurs page puis envoie de mail à la fin qui fonctionne très bien, quand mon mail est envoyé j'ai bien ma redirection sur ma page d'accueil!
J'aimerai qu'en plus de cette redirection j'ai une pop up qui s'ouvre m'indiquant "votre mail a bien été envoyé"
ça ne doit pas être compliqué mais je n'y arrive pas... voici mon code :

<?php
    session_start();
    $perso = $_SESSION'perso'];
    $ordi = $_SESSION'ordi'];
    $info = $_SESSION'info'];
    $nom = $_POST'nom'];
    $_SESSION'nom'] = $nom;
    $prenom = $_POST'prenom'];
    $_SESSION'prenom'] = $prenom;
    $adresse = $_POST'adresse'];
    $_SESSION'adresse'] = $adresse;
    $cp = $_POST'cp'];
    $_SESSION'cp'] = $cp;
    $ville = $_POST'ville'];
    $_SESSION'ville'] = $ville;
    $email = $_POST'email'];
    $_SESSION'email'] = $email;
    $tel = $_POST'tel'];
    $_SESSION'tel'] = $tel;
 if(isset($_POST) && isset($_POST'nom'])
        && isset($_POST'prenom'])
        && isset($_POST'email'])
        && isset($_POST'adresse'])
        && isset($_POST'ville'])
        && isset($_POST'cp'])
        && isset($_POST'tel'])
        && isset($_SESSION'info'])){
    if(!empty($_POST'nom']) 
        && !empty($_POST'prenom'])
        && !empty($_POST'email'])
        && !empty($_POST'adresse'])
        && !empty($_POST'ville'])
        && !empty($_POST'cp'])
        && !empty($_POST'tel'])){

    /*echo "Page de récupération des données :<br><br>";*/
            if (isset($_POST"perso"]))
            /* la case est cochée */
                $perso = $_POST"perso"];
                else
                $perso = "";

                if (isset($_POST"ordi"]))
                $ordi = $_POST"ordi"];
                else
                $ordi = "";

                $perso = '0';
                $ordi = '0';

        $destinataire = "moi@monmail.com";
        $sujet = '=?UTF-8?B?'.base64_encode('Sujet : DEVIS EN LIGNE').'?=';
        $message = "
         CE MESSAGE ET UN MESSAGE AUTOMATIQUE , ENVOYE DEPUIS LE SITE http://teaminformatique.com POUR LA DEMANDE DE DEVIS EN LIGNE, VEUILLEZ NE PAS REPONDRE. \n
        Message de : ".$_POST'nom']." ".$_POST'prenom']." \n
        Adresse email : ".$_POST'email']." \n
        Adresse :".$_POST'adresse']." \n
        Ville : ".$_POST'ville']." \n
        Code postale :".$_POST'cp']." \n
        Numéro :".$_POST'tel']." \n
        e demandeur est un ou une :".$_SESSION'perso']." \n
        Ce qu'il recherche :".$_SESSION'ordi']." \n

        Informations supplémentaires :".$_SESSION'info']."

        " ;
        $entete = 'From: '.$_POST'email']."\r\n".
            'Reply-To: '.$_POST'email']."\r\n".
        'X-emailer: PHP/'.phpversion();
        $entete .='Content-Type: text/plain; charset="utf-8"'." "; // ici on envoie le email au format texte encodé en UTF-8
        $entete .='Content-Transfer-Encoding: 8bit'; // ici on précise qu'il y a des caractères accentués
        $entete .= "MIME-Version: 1.0";
        if (mail($destinataire,$sujet,$message,$entete)){
            header("location:http://monsite.com/");

} else {
            echo "Une erreur est survenue lors de l'envoi du formulaire par email";
        }
    }else{
        echo "Erreur 1";
    }
}else{
    echo "Erreur 2";
} ?>

merci d'avance

4 réponses

Glaived, il y a 12 ans

Le problème alors est que tu peu pas faire une redirection php, vue que tu veux faire un popup, en JS oui.
Déjà, tu veux une popup ou une alert ? http://jsfiddle.net/Z9Usb/

Prescillia Nierichlo, il y a 12 ans

Oups confondu les deux ! Je veux juste un alert ! c'est possible ça du coup ?

Glaived, il y a 12 ans

remplace la ligne 87 par

?><script>alert("Message ok");document.location.href="http://monsite.com/"</script><?php
Prescillia Nierichlo, il y a 12 ans

Merci beaucoup ça fonctionne !