formulaire et envoi

Eléphant du PHP | 152 Messages

27 juil. 2005, 15:42

voila ce que je voudrais faire : une page ou l'on met le nom l'adresse et un texte (formulaire) et qu'il soit envoyer par mail via uen adresse mail

mais mon probleme est qu'il dit que les variables ne sont pas definis

formulaire.php
<HTML> 
<HEAD> 
<TITLE>E-Mail Formulaire</TITLE> 
</HEAD> 
<BODY> 
<FORM method="POST" action="envoi.php"> 
<P>Votre noom:<br> 
<INPUT type="text" name="nom" size=30> 
</p> 
<P>Votre adresse E-Mail:<br> 
<INPUT type="text" name="email" size=30> 
</p> 
<P>Message:<br> 
<textarea name="message" cols=30 rows=5></textarea> 
</p><INPUT type="submit" value="Envoyer"> 
</FORM> 
</BODY> 
</HTML> 
envoi.php
<?php 
//Pour définir chaque input du formulaire, ajouter le signe de dollar devant 

$expediteur="toto";
$nomexped="jp";  
$msg = "Nom:\t$nom\n"; 

$msg .= "Message:\t$message\n\n"; 
//Pourait continuer ainsi jusqu'à la fin du formulaire 
  
$destinataire = "[email protected]"; 
$sujet = "Formulaire"; 
  
$mailheaders = "From: Mon test de formulaire<> \n";  
  
mail($destinataire,$sujet,$msg,"From: ".$nomexped."<".$expediteur.">"."\nReply-To: [email protected]\n"."Content-Type: text/html");
  
echo "<HTML><HEAD>"; 
echo "<TITLE>Formulaire envoyer!</TITLE></HEAD><BODY>"; 
echo "<H1 align=center>Merci, $nom </H1>"; 
echo "<P align=center>"; 
echo "Votre formulaire à bien été envoyé !</P>"; 
echo "</BODY></HTML>"; 
  
?> 
je en voit pas ce qui cloche dans mon script , pouvez vous maider ,??

Mammouth du PHP | 19672 Messages

27 juil. 2005, 15:48

<?php 
//Pour définir chaque input du formulaire, ajouter le signe de dollar devant 
Ça, ça cloche. si le register_globals est à OFF comme il l'est par défaut depuis PHP4.2, ça ne fonctionnera pas.

Pour récupérer la valeur d'une variable venant d'un formulaire, il faut la récupérer de la superglobale $_POST ou $_GET:
$var = $_POST['var']
Où "var" est la valeur de l'attribut "name" de la balise <input> de ton formulaire.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 152 Messages

27 juil. 2005, 15:57

il faut donc la mettre tout debut du script de la page envoi.php ?

est il possible de faire $msg = $_POST['message'] ??

Eléphant du PHP | 152 Messages

27 juil. 2005, 16:24

:arrow: :?: