Envoie d'un mail en Php - Javascript avec une seule page Php [Résolu]

Messages postés
3
Date d'inscription
mardi 25 avril 2006
Dernière intervention
12 mai 2006
- - Dernière réponse : elfigone81
Messages postés
3
Date d'inscription
mardi 25 avril 2006
Dernière intervention
12 mai 2006
- 12 mai 2006 à 10:33
Bonjour,
Je voulais demander de l'aide pour le script suivant. En faite je voudrai envoyer un mail avec une seule page php contenant également un petit formulaire avec des champs de texte "nom" et "email". Mon souci est en faite d'envoyer le mail une fois que l'utilisateur clicke sur le bouton Souscription, et en affichant si possible un petit message de confirmation de l'envoie du mail, tout en restant sur la meme page. J'ai pensé donc à une solution avec Javascript, mais rien ne marche.
Mercii d'avance de vos réponses.


<html>
<head>

<script language= "javascript">
    function envoie(){
        <? 
        $nom=$_GET["contact_nom"]; 
        $email=$_GET["contact_email"];
         ?>
         var nom,email;
         nom="";
         email="";
         nom=<? $nom ?>;
         email=<? $email ?>;
        if (nom=="" || email=="")
            alert("Remplissez bien tous les champs");
        else 
            <?
                  $mail = 'elfigone@hotmail.com';
                  //d&#233;finis la pr&#233;sentation du mail
                  $presentation = 'Ce message &#224; &#233;t&#233; envoy&#233; par '.$nom.'
 Son mail : '.$email; 
                  $lemail = $presentation.'
 Son message :  
 Bonjour 
';
                  $sujet  = "bonjour: ".$nom; // sujet du mail
                  $entete ="De: ".$email."\r\n"; //l'email de l'exp&#233;diteur
                  $entete .="MIME-Version: 1.0\r\n";
                  $entete .="Content-Type: text/html; charset=us-ascii\r\n"; //(le mail est envoy&#233; au format html)
                  mail($mail, $sujet, $lemail, $entete); // envoie du mail
                
                $message="Votre message a bien &#233;t&#233; envoy&#233;"; // message de confirmation d'envoi
             ?>    
    }
</script>
</head>

<form  method="POST">
  <label>
  
  </label>
    <label> 

    

    
    </label>
  
    

  

</form>

<? echo $message; ?>

</html>

Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
1218
Date d'inscription
mardi 20 décembre 2005
Dernière intervention
18 octobre 2012
4
3
Merci
confusion entre php et js...



<?php

if(isset(
$_POST["contact_nom"]) &&
isset(
$_POST["contact_email"]))

{


$nom= $_POST["contact_nom"];


$email=$_POST["contact_email"];

$mail = 'elfigone@hotmail.com';

$presentation = 'Ce message à été envoyé par '.$nom.'
Son mail : '.$email;

$lemail = $presentation.'
Son message :
Bonjour
';

$sujet = "bonjour: ".$nom; // sujet du mail

$entete ="De: ".$email."\r\n"; //l'email de l'expéditeur

$entete .="MIME-Version: 1.0\r\n";

$entete .="Content-Type: text/html; charset=us-ascii\r\n";



if(mail($mail, $sujet, $lemail, $entete))

echo "Votre message a bien été envoyé";

else

e
cho "Echec d'envoi du mail";


}



else



{

?>

<html>

<head>

<script language="javascript">

function controle()

{

if(document.F1.contact_nom.value=="")

{alert("Nom obligatoire");return false;}

else


if(document.F1.contact_email.value=="")

{alert("E-mail obligatoire");return false;}

else

document.F1.submit();


}

</script>

</head>



<form name="F1" method="POST" action="">

<label>



</label>

<label>







</label>









</form>



</html>

<?php

}

?>



A TESTER...

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 118 internautes nous ont dit merci ce mois-ci

Commenter la réponse de sidf
Messages postés
137
Date d'inscription
lundi 10 janvier 2005
Dernière intervention
28 août 2007
0
Merci
Salut,
j'ai l'impression que tu ne t'y connais pas beaucoup en php parce que sinon tu saurais premièrement que les short-tags(<?) sont mal vus et que ton javascript ne sert à rien vu qu'il ne pourrait envoyer le code seulement quand la page est rechargée.

Je te propose ceci comme solution :
<?php

if(!empty($_POST['contact_nom']) && !empty($_POST['contact_mail'])) {

$mail = 'elfigone@hotmail.com';
//définis la présentation du mail
$presentation = 'Ce message à été envoyé par '.$nom.'
Son mail : '.$email;
$lemail = $presentation.'
Son message :
Bonjour
';
$sujet = "bonjour: ".$nom; // sujet du mail
$entete ="De: ".$email."\r\n"; //l'email de l'expéditeur
$entete .="MIME-Version: 1.0\r\n";
$entete .="Content-Type: text/html; charset=us-ascii\r\n"; //(le mail est envoyé au format html)
mail($mail, $sujet, $lemail, $entete); // envoie du mail

echo "Votre message a bien été envoyé"; // message de confirmation d'envoi

}

?>
<html>
<head>
</head>

<form method="POST">
<label>

</label>
<label>




</label>





</form>

<?php echo $message; ?>

</html>

Spyro666 contre le 555
Commenter la réponse de cs_spyro666
Messages postés
137
Date d'inscription
lundi 10 janvier 2005
Dernière intervention
28 août 2007
0
Merci
Holala... comme on est synchro XD

Spyro666 contre le 555
Commenter la réponse de cs_spyro666
Messages postés
3
Date d'inscription
mardi 25 avril 2006
Dernière intervention
12 mai 2006
0
Merci
C'est vrai que je suis un peu débutant (un peu trop peut-être) en Php et en Javascript , pour le moment , mais on est bien là pour apprendre .
Merci à tous pour vos réponses rapides.
Sidf ton code marche superbien j'opterai donc pour celui là.
Merchi encore et à pluch pluch
Commenter la réponse de elfigone81

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.