Nous venons de créer la page html qui contient le formulaire d'envoi, nous allons maintenant créer le fichier php qui va récupérer la valeur saisi par l'internaute ( nom de l’internaute ). Le nom de ce dernier n'est pas n'importe, il doit suivre la commande
<?php
$nom = $_POST['visiteur'] ;
echo<code>"</code> bienvenue <code>"</code>.$nom ;
?>
Remarque :
Les deux fichiers doivent être déposés dans le même répertoire si non vous devez indiquer le chemin du fichier php dans action = "
fichier.php"
2 - Utilisation de la fonction mail( )
La fonction mail permet l'evoi d'un message sous forme d'un courriel à un destinataire. Sa syntaxe est la suivante :
Mail( "
adresse de messagerie du destinataire"
, "
sujet du message"
,"
le message"
) ;
Exemple :
Créons un formulaire d'envoie d'email à l'adresse : y_derf@yahoo.fr
</p>
<form method = "POST" action = "formmail.php" >
Sujet <input type = "text" name = "sujetmessage">
Message <input type = "text" name = "message">
<input type = "submit" value= "Envoyez">
</form>
<p>
Le fichier php qui va traiter le formulaire sera nommé : formmail.php son code est :
formmail.php
<?php
$sujet = $_POST['sujetmessage '] ;
$message = $_POST[' message'] ;
mail(<code>"</code>y_derf@yahoo.fr <code>"</code>,$sujet , message) ;
?>
On peut ajouter l'adresse email de l'internaute par la méthode :
$to = $_POST['adresse email de l'internaute']
mail(″ adresse mail destinataire ″ , $sujet , $message , ″from :″.$to) ;
et si on veut rediriger l'internaute vers une page de remerciement , on doit tout d'abord créer cette page lui donner un nom par exemple une page web contenant le message « Merci pour votre participation » nommons la merci.htm, il suffit maintenant d'ajouter la méthode suivante :
header(″location : http://adresse url de la page merci.htm ″) ;
Code complet de l'exemple
Voici le code de la page web contenant le formulaire à remplir appelons la index.htm :
index.htm
<html>
<head>
<title>formulaire</title>
</head>
<body>
</p>
<form method="post" action="formmail.php">
votre email<input type="text" name="mailpost">
sujet du message<input type="text" name="sujet">
message<input type="text" name="message">
<input type="submit" value="envoyezé">
</form>
<p>
</body>
</html>
Voici la page formmail.php qui va traiter la page formulaire :
formmail.php
<?php
$to=$_POST['mailpost'];
$sujet=$_POST['sujet'];
$message=$_POST['message'];
mail("y_derf@yahoo.fr",$sujet,$message,"from:<code>"</code>.$to);
header("Adresse url de la page merci.htm");
?>
Voici le code de la apge merci.htm :
merci.htm
<html>
<head>
<title>Merci pour votre participation</title>
</head>
<body>
<font size="6">Merci pour votre participation</font>
</body>
</html>
3 - Envoi d'email en mode html
On peut envoyer l'email en mode html (mise en forme du texte : gras, italique, soulignement, couleur du texte,images ...) , il suffit pour cela d'ajouter quelque lignes de code au script ci-dessus :
$to .="MIME-version:1.0 \n";
$to .="Content-type:text/html; charset=iso-8859-1\n";
Code complet de l'exemple
Voici le code de la page web contenant le formulaire à remplir :
index.htm
<html>
<head>
<title>formulaire</title>
</head>
<body>
</p>
<form method="post" action="formmail.php" enctype="multipart/form-data">
votre email<input type="text" name="mailpost">
sujet du message<input type="text" name="sujet">
message<input type="text" name="message">
<input type="submit" value="Envoyez">
</form>
<p>
</body>
</html>
Voici la page formmail.php qui va traiter la page formulaire :
<?php $to=$_POST['mailpost']; $to .="MIME-version: 1.0\n"; $to .= "Content-type: text/html; charset= iso-8859-1\n"; $sujet=$_POST['sujet']; $message=$_POST['message']; if(mail("y_derf@yahoo.fr",$sujet,$message,"from:".$to)){ echo'message envoyé correctement'; } else{ echo'message non envoyé'; } ?>
1 thought on “6 - Contrôle des formulaires en php”