Ou inserer le code PHP pour formulaire?

JakeB Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis en train de faire un site et cela fait plusieurs jours que je traine sur la grande toile pour essayer de voir ou insérer le code PHP pour envoyer mon formulaire sur mon mail. Au début ou à la fin de mon formulaire? J'ai l'impression que c'est au début mais je n'arrive pas à comprendre comment le code communique avec le bouton "send" qui est en bas du formulaire.
Voici le début du code HTML de mon tableau. Pouvez vous me dire s'il vous plait ou insérer le code PHP et si possible quel code serait le mieux adapter pour envoyer le formulaire par mail?
Je vous remercie d'avance pour votre aide.
PS: continuer avec ce site car le nombre de fois ou il m'a aider!!!!


<label for="label">Title:</label>
</strong></span></td>
<td><form id="form3" name="form3" method="post" action="">
<select name="title" id="title" accesskey="t" tabindex="10">
<option>Mr</option>
<option>Mlle</option>
<option>Mme</option>
</select>
</form> </td>
</tr>
<tr>
<td width="151" height="66"><span class="Style4"><strong>
<label for="label">Name:</label>
</strong></span></td>
A voir également:

6 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
comme ça:
deux parties
la première: traitement du formulaire posté
la 2 ième: affichage du formulaire (else pas posté )


<html>
<head>
</head>
<body>
<?php
//tu mets ton code php içi
if(isset($_POST['envoyer'])){

	// le formulaire a té posté traitement envoi du mail
	
	//  etc.....
	
	//envoi
	if(mail($dest,$sujet,$message,$headers)){ //bien sur tu changes en tct de tes varaibles à toi
		//confirmation a l'utilisateur
		echo "Le mail a bien &eacute;t&eacute; envoy&eacute; ";
	
	}

}else{
	//affichage du formulaire
?>
<label for="label">Title:</label>
</strong></span></td>
<td><form id="form3" name="form3" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<select name="title" id="title" accesskey="t" tabindex="10">
<option>Mr</option>
<option>Mlle</option>
<option>Mme</option>
</select>
</form> </td>
</tr>
<tr>
<td width="151" height="66"><span class="Style4"><strong>
<label for="label">Name:</label>
</strong></span></td>

....
<input type="submit" name="envoyer" value="Envoyer le formulaire">
</form>
<?php
}
?>
</body></html>
0
jakeb
 
Bonjour,
Tout d'abords merci pour ta réponse et désolé pour ma réponse tardive (plus de connexion internet).
J'ai réussi à mettre les codes et je reçois par mail le questionnaire, mais il est vide!
De quoi cela peut venir?
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
Ça je ne peux pas te dire d'où ça peut venir sans voir ton code.
0
jakeb
 
en effet, cela pourrait être plus facile avec!!!


<?php

$msg .= "name:\t$name\n";
$msg .= "surname:\t$surname\n";
$msg .= "email:\t$email\n\n";
$msg .= "you are:\t$you are\n";
$msg .= "agency name:\t$agency name\n";
$msg .= "demand:\t$demand\n";

$recipient = "jakeborland@gmail.com";
$subject = "Formulaire";

$mailheaders = "From: Mon test de formulaire<> \n";
$mailheaders .= "Reply-To: $email\n\n";

mail($recipient, $subject, $msg, $mailheaders);

echo "<HTML><HEAD>";
echo "<TITLE>Formulaire envoyer!</TITLE></HEAD><BODY>";
echo "<H1 align=center>Thank you, $nom </H1>";
echo "<P align=center>";
echo "Your demand has been sent to French Prestige Weddings. We will be in touch soon !</P>";
echo "</BODY></HTML>";

?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
<?php

//il faut recuperer les variables postees
$name=$_POST['name']; //si name est le nom du champ nom dans ton formulaire

//etc..

//tu concatenes $msg par .= mais il faut partir de qq chose même vide
$msg="";
$msg .= "name:\t$name\n";
$msg .= "surname:\t$surname\n";
$msg .= "email:\t$email\n\n";
$msg .= "you are:\t$you are\n";
$msg .= "agency name:\t$agency name\n";
$msg .= "demand:\t$demand\n";

$recipient = "jakeborland@gmail.com";
$subject = "Formulaire";
//c'est pas bon il faut que From et Reply soient avec TON adresse mail, vu du script et de ton serveur il ne connait pas l'email du client
$mailheaders = "From: Mon test de formulaire<> \n";
$mailheaders .= "Reply-To: $email\n\n";
//vas voir sur Google " php headers mail" car il te manque des definitionbs dans ton header
mail($recipient, $subject, $msg, $mailheaders);

echo "<HTML><HEAD>";
echo "<TITLE>Formulaire envoyer!</TITLE></HEAD><BODY>";
echo "<H1 align=center>Thank you, $nom </H1>";
echo "<P align=center>";
echo "Your demand has been sent to French Prestige Weddings. We will be in touch soon !</P>";
echo "</BODY></HTML>";

?>
0
jakeB
 
Bonjour,
J'ai bien essayé ce que tu a dis mais ça ne marche toujours pas.
J'ai le message suivant qui s'affiche quand je clique sur "send"
Parse error: syntax error, unexpected T_STRING in /homez.110/frenchpr/www/send.php on line 6


Voici mon code que j'ai changé. (je ne comprends plus rien)Merci encore pour ton aide.

<?php

$name=$_POST['name'];
$surname=$_POST['surname'];
$email=$_POST['email'];
$you are=$_POST['you are'];
$agency name=$_POST['agency name'];
$demand=$_POST['demand'];

$msg="";
$msg.= "name:\t$name\n";
$msg.= "surname:\t$surname\n";
$msg.= "email:\t$email\n\n";
$msg.= "you are:\t$you are\n";
$msg.= "agency name:\t$agency name\n";
$msg.= "demand:\t$demand\n";

$recipient = "jakeborland@gmail.com";
$subject = "Formulaire";

$mail_header .= "From:jakeborland@gmail.com<> \n";
$mail_header .= "Reply-To:jakeborland@gmail.com\n\n";
$mail_header .= 'MIME-Version: 1.0'."\n";
$mail_header .= "Content-type: text/html; charset=iso-8859-1";

mail($recipient,$subject,$msg,$mail_header);

echo "<HTML><HEAD>";
echo "<TITLE>Formulaire envoyer!</TITLE></HEAD><BODY>";
echo "<H1 align=center>Thank you, $nom </H1>";
echo "<P align=center>";
echo "Your demand has been sent to French Prestige Weddings. We will be in touch soon !</P>";
echo "</BODY></HTML>";

?>
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
?php
$name=$_POST['name'];
$surname=$_POST['surname'];
$email=$_POST['email'];
$you_are=$_POST['you_are'];//ne jamais mettre d'espace ni d'accents dans tes variables 
$agency_name=$_POST['agency_name'];
$demand=$_POST['demand'];
//attention change tes name  dans ton formulaire pour you_are et agency_name
$msg="";
$msg.= "name:\t$name\n";
$msg.= "surname:\t$surname\n";
$msg.= "email:\t$email\n\n";
$msg.= "you are:\t$you are\n";
$msg.= "agency name:\t$agency name\n";
$msg.= "demand:\t$demand\n";

$recipient = "jakeborland@gmail.com";
$subject = "Formulaire";
$mail_header="Return-path:jakeborland@gmail.com\n";//attention a tes concatenations !!  la première doit être sans .=
$mail_header .= "From:\"jakeborland\"<jakeborland@gmail.com>\n"; 
//$mail_header .= "Reply-To:jakeborland@gmail.com\n"; celui la n'est pas obligatoire
$mail_header .= 'MIME-Version: 1.0'."\n";
$mail_header .= "Content-type: text/plain; charset=iso-8859-1";

mail($recipient,$subject,$msg,$mail_header);

echo "<HTML><HEAD>";
echo "<TITLE>Formulaire envoyer!</TITLE></HEAD><BODY>";
echo "<H1 align=center>Thank you, $nom </H1>";
echo "<P align=center>";
echo "Your demand has been sent to French Prestige Weddings. We will be in touch soon !</P>";
echo "</BODY></HTML>";

?>
0