Formulaire de contact

Fermé
Jay-Jay - 26 oct. 2005 à 11:11
 Kasimashi - 29 nov. 2011 à 02:12
bonjour voila je vien de créer un formaulaire de contact en 2 fichier php mais malheureusement ca n'envoi pas sur mon email voici les code si qqun peut m'aider :

contact.php

<html>
<head>
<title>Contact</title>
<style type="text/css">
form label{display:block;float:left;clear:left;width:100px;text-align:right;vertical-align:top;margin:5px 0}
#userInput textarea,
#userInput input {margin:5px 2px;border:1px solid #000;vertical-align:top}
#formFooter {margin-left:100px}
#formFooter input {margin:5px 2px;}
</style>
</head>
<body>

<div id="body">

<div id="content">
<h2>Me contacter</h2>


<form action="mail.php" method="post">
<p id="userInput">
<label for="name">Vous êtes : </label>
<input type="text" name="Name" id="Name"/>
<br />
<label for="email">Votre email : </label>

<input type="text" name="Email" id="Email"/>
<br />
<label for="subject">Sujet : </label>
<input type="text" id="Sujet" name="Sujet"/>
<br />
<label for="message">Message : </label>
<textarea name="Message" id="Message" rows="10" cols="40"></textarea>
</p>

<p id="formFooter">
<input type="submit" value="Envoyer" />
</p>
</form>
</div>

</div>
</center>
</body>
</html>


mail.php

<?php
if($send =="envoi")
{
if($Name =="")
{
// On verifie le nom
echo("Le champ Nom est vide !");
}
else
{
if($Message =="")
{
// On verifie le message
echo("Le champ Message est vide !");
}
else
{
// On verifie le sujet
if($Sujet =="")
{
echo("Le champ sujet est vide !");
}
else
{
// On verifie l'email
if($Email =="")
{
echo("Le champ email est vide !");
}
else
{
// si tout a été remplie, on envoi
mail("jayjay14@free.fr",$Sujet,$Message,$Name,"From: ".$Email);
echo("Votre message a bien été envoyé");
}
}
}
}
}
?>

<html>
<head>
<title>Contact</title>
<style type="text/css">
form label{display:block;float:left;clear:left;width:100px;text-align:right;vertical-align:top;margin:5px 0}
#userInput textarea,
#userInput input {margin:5px 2px;border:1px solid #000;vertical-align:top}
#formFooter {margin-left:100px}
#formFooter input {margin:5px 2px;}
</style>
</head>
<body>

<div id="body">

<div id="content">
<h2>Me contacter</h2>


<form action="mail.php" method="post">
<p id="userInput">
<label for="name">Vous êtes : </label>
<input type="text" name="Name" id="Name"/>
<br />
<label for="email">Votre email : </label>

<input type="text" name="Email" id="Email"/>
<br />
<label for="subject">Sujet : </label>
<input type="text" id="Sujet" name="Sujet"/>
<br />
<label for="message">Message : </label>
<textarea name="Message" id="Message" rows="10" cols="40"></textarea>
</p>

<p id="formFooter">
<input type="submit" value="Envoyer" />
</p>
</form>
</div>

</div>
</center>
</body>
</html>

merci d'avance

17 réponses

Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
26 oct. 2005 à 11:31
Tiens, essaye ça :
<?php 
// Récupération des données transmises par POST
$Name = $_POST['Name'];
$Message = $_POST['Message'];
$Sujet = $_POST['Sujet'];
$Email = $_POST['Email'];

  if($Name ==""){ 
    // On verifie le nom 
    echo("Le champ Nom est vide !"); 
  } 
  else{ 
    if($Message ==""){ 
      // On verifie le message 
      echo("Le champ Message est vide !"); 
    } 
    else{ 
      // On verifie le sujet 
      if($Sujet ==""){ 
        echo("Le champ sujet est vide !"); 
      } 
      else{ 
        // On verifie l'email 
        if($Email ==""){ 
          echo("Le champ email est vide !"); 
        } 
        else{ 
          // si tout a été remplie, on envoi 
          mail("jayjay14@free.fr",$Sujet,$Message,$Name,"From: ".$Email); 
          echo("Votre message a bien été envoyé"); 
        }
      } 
    } 
  } 
?> 

1
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
26 oct. 2005 à 11:27
Salut,

Premièrement, est-ce volontaire d'avoir collé deux fois le fichier contact.php ?

Ensuite, dans ton fichier mail.php, il faut que tu récupère les données transmises par post AVANT des les utiliser. ($_POST['cequetuveux'])

Attends deux secondes, je te corrige déjà un bout.

;o)
0
wiwimagique Messages postés 481 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 20 avril 2006 108
26 oct. 2005 à 11:28
la condition $send=="envoie" est-elle vérifiée au moins ?
je ne vois rien qui s'appelle send ...

0
je ne l'ai pas coller simplement il ya 2 fichiers contact.php puis mail.php
merci pour ta correction vais essayer ca :)
0

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

Posez votre question
ca marche tjs pas :(
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
26 oct. 2005 à 11:41
Tu as un message d'erreur ou quelque chose ?`

Et pourquoi y a-t-il 2 fichiers contact en fait, j'ai pas trop compris...
0
wiwimagique Messages postés 481 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 20 avril 2006 108
26 oct. 2005 à 11:48
Ca ne marche pas, ça veut dire :

Tu as un message d'erreur ?
Tu as le message de réussite ?
Tu n'as aucun message ?
Tu as un message système ?

tu as enlevé le $send=="envoie" ?
0
voila ce qui s'affiche en haut de mon formulaire :

Warning: mail(): Nombre de parametres incorrects in /var/www/free.fr/c/9/jayjay14/DB/mail.php on line 29
Votre message a bien été envoyé

pour les 2 fichiers je sais pas trop non plus j'ai trouver ca sur un site comme j'apprend tres doucement le php donc j'ai suivi la methode a peu pres sur ce site
http://www.webdiz.com/coursphp/form2mail.php

si tu veux voir mon formulaire c'est la
http://jayjay14.free.fr/DB/contact.php
0
wiwimagique Messages postés 481 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 20 avril 2006 108
26 oct. 2005 à 11:50
oui, en effet
regarde un peu ici :

http://fr.php.net/mail

0
euh je dois comprendre quoi par ce lien ^o)
0
wiwimagique Messages postés 481 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 20 avril 2006 108 > Jay-Jay
26 oct. 2005 à 12:04
Elle décrit la fonction mail, qui a bien planté chez toi :-D

En fait, Ednax t'as déjà répondu : t'as même pas eu besoin de lire :p

En fait, tu vois que la fonction mail() accepte 4 arguments comme suit :

mail ($emailArrivee, $sujet, $message, $entete); l'entete contenant l'email de l'envoyeur.

Dans ton cas, tu as mis 5 arguements, suite à une faute de frappe j'imagine. php ne comprend pas ce qu'il doit faire du 5e paramètre et t'envoit donc une erreur.

voili voilou
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
26 oct. 2005 à 11:59
Sache que le site que wiwimagique te propose est la bible du développeur php.

Tu trouvera toutes les infos pour développer tes scripts expliquant les fonctions, des astuces etc.

Il peu parraître un peu rude au premier abord, mais il est super complet et inévitable si tu veux utiliser php.

;)
0
je prend note alors mais c'est clair que pour moi ki n'en ai jamais fait ca a l'air corsé! lol
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
26 oct. 2005 à 11:53
Effectivement, il faut que tu regrouppes le nom de l'expéditeur dans ton message, sinon, php ne comprendra pas le paramètres. Il n'est pas correct pour lui.

Fais quelque chose du style :

$Message .= "

$Nom";

Ce qui donne :
<?php 
// Récupération des données transmises par POST
$Name = $_POST['Name'];
$Message = $_POST['Message'];
$Message .= "

$Name";
$Sujet = $_POST['Sujet'];
$Email = $_POST['Email'];

  if($Name ==""){ 
    // On verifie le nom 
    echo("Le champ Nom est vide !"); 
  } 
  else{ 
    if($Message ==""){ 
      // On verifie le message 
      echo("Le champ Message est vide !"); 
    } 
    else{ 
      // On verifie le sujet 
      if($Sujet ==""){ 
        echo("Le champ sujet est vide !"); 
      } 
      else{ 
        // On verifie l'email 
        if($Email ==""){ 
          echo("Le champ email est vide !"); 
        } 
        else{ 
          // si tout a été remplie, on envoi 
          mail("jayjay14@free.fr",$Sujet,$Message,"From: ".$Email); 
          echo("Votre message a bien été envoyé"); 
        }
      } 
    } 
  } 
?>
0
MErci bcp Erdnax tu es mon heros :D ca fonctionne nikel..si je profite de toi pour rajouter un truc du style mettre des pieces jointes au mess j'abuse?
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
26 oct. 2005 à 12:08
Dans un premier temps à mon avis si tu veux améliorer ton script, et là je te laisse chercher, je vais quand même pas faire ton site à ta place, je te conseil de vérifier que l'adresse email entrée non seulement n'est pas vide, mais qu'elle contient un "@", un ".", et au moins 6 caractères ;)

D'autres améliorations pourront être imaginées avant la pièce jointe, car si tu est débutant, c'est déjà un niveau un peu élevé pour toi, rien ne sert de courir, il faut partir en bas (comment ça c'est pas ça ?!?!).

Gravit les échelons par étape, commence par comprendre ce qu'on a fait, pourquoi, et tu verra la satisfaction que tu as lorsque les scripts sont 100% de toi ;)

@+
0
voila j'ai rajouté ca pour tester l'adresse mail c'est pas terrible car meme si l'adresse mail est non valide le message s'envoie kan meme ou est l'erreur?


<?php
function checkEmail($Email)
{
if(eregi("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$]", $Email))
{
return FALSE;
}
list($Username, $Domain) = split("@",$Email);
if(getmxrr($Domain, $MXHost))
{
return TRUE;
}
else
{
if(fsockopen($Domain, 25, $errno, $errstr, 30))
{
return TRUE;
}
else
{
return FALSE;
}
}
}
?>
<?php

// Récupération des données transmises par POST
$Name = $_POST['Name'];
$Message = $_POST['Message'];
$Message .= "

$Name";
$Sujet = $_POST['Sujet'];
$Email = $_POST['Email'];

if($Name ==""){
// On verifie le nom
echo("Le champ Nom est vide !");
}
else{
if($Message ==""){
// On verifie le message
echo("Le champ Message est vide !");
}
else{
// On verifie le sujet
if($Sujet ==""){
echo("Le champ sujet est vide !");
}
else{
// On verifie l'email
if(checkEmail($Email) == FALSE)
{
echo "L'adresse E-mail n'est pas valide \n";
}
else
{
echo "L'adresse E-mail est valide \n" ;
}

if($Email ==""){
echo("Le champ email est vide !");
}
else{
// si tout a été remplie, on envoi
mail("jayjay14@free.fr",$Sujet,$Message,"From: ".$Email);
echo("Votre message a bien été envoyé");
}

}
}
}
?>
<html>
<head>
<title>Contact</title>
<style type="text/css">
form label{display:block;float:left;clear:left;width:100px;text-align:right;vertical-align:top;margin:5px 0}
#userInput textarea,
#userInput input {margin:5px 2px;border:1px solid #000;vertical-align:top}
#formFooter {margin-left:100px}
#formFooter input {margin:5px 2px;}
</style>
</head>
<body bgcolor="#D8BFD8">
<div id="body">

<div id="content">
<h2 align="center">Me contacter</h2>


<form action="mail.php" method="post">
<p id="userInput">
<label for="name">Vous êtes : </label>
<input type="text" name="Name" id="Name">
<br>
<label for="email">Votre email : </label>

<input type="text" name="Email" id="Email">
<br>
<label for="subject">Sujet : </label>
<input type="text" id="Sujet" name="Sujet">
<br>
<label for="message">Message : </label>
<textarea name="Message" id="Message" rows="10" cols="40"></textarea>
</p>

<p id="formFooter">
<input type="submit" value="Envoyer">
<input type="reset" value="Recommencer">
<br><br><a href="http://jayjay14.free.fr/DB/l-univers-de-dragonball.html">Retour à l'accueil</a>

</p>
</form>
</div>

</div>
</center>
</body>
</html>
0
wiwimagique Messages postés 481 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 20 avril 2006 108
26 oct. 2005 à 12:07
C'est un peu compliqué à faire pour les fichiers attachés.
Mais il existe des librairies toutes faites que tu peux trouver sur internet pour cela.

par exemple :
http://www.nexen.net/scripts/details.php?scripts=425

(excellent site au passage :) )
0
wiwimagique Messages postés 481 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 20 avril 2006 108
26 oct. 2005 à 12:14
Enfin, dans ce cas précis, ce n'est pas une classe mais une exemple de code.

Mais ce que dit Erdnax est vrai. Il vaut mieux faire des choses à ta portée d'abord, même si ce n'est pas aussi évolué que tu le souhaites.
Recopier le code tout fait, sans comprendre, ne te permettra pas de l'adapter à tes besoins de toute façon.
0
jay-jay > wiwimagique Messages postés 481 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 20 avril 2006
26 oct. 2005 à 12:35
non t'inquiete pas je recopie pas betement j essaye de comprendre aussi ;) faut un debut a tout
0
merci a tous en tt cas ;)
0
Erdnax Messages postés 2273 Date d'inscription mercredi 1 octobre 2003 Statut Contributeur Dernière intervention 1 octobre 2007 497
27 oct. 2005 à 09:01
Salut,

On va continuer la discution ici, histoire que ça reste clair.

Je te conseil de faire plus simple, c'est ce que j'ai entre autre utilisé sur mon site :

<?php 

// Récupération des données transmises par POST 
$Name = $_POST['Name']; 
$Message = $_POST['Message']; 
$Message .= " 

$Name"; 
$Sujet = $_POST['Sujet']; 
$Email = $_POST['Email']; 

if($Name ==""){ 
  // On verifie le nom 
  echo("Le champ Nom est vide !"); 
} 
else{ 
  if($Message ==""){ 
    // On verifie le message 
    echo("Le champ Message est vide !"); 
  } 
  else{ 
    // On verifie le sujet 
    if($Sujet ==""){ 
      echo("Le champ sujet est vide !"); 
    } 
    else{ 
      // On verifie l'email 
      if(($Email == "") || (!preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $Email))){ 
        echo "L'adresse E-mail n'est pas valide \n"; 
      } 
      else{ 
        // si tout a été remplie, on envoi 
        mail("jayjay14@free.fr",$Sujet,$Message,"From: ".$Email); 
        echo("Votre message a bien été envoyé"); 
      } 
    } 
  } 
} 
?> 

Mais j'ai un peu peur que tu grilles les étapes en utilisant les regex (expressions régulières) à ce stade. C'est de loin la meilleur solution pour vérifier les mail, mais fais attention à ne pas prendre de script trop pré-conçu.

Je ne suis pas sûr que tu aie comris ce que tu avais fais, sinon tu te serais sûrement passé de la fonction, tu aurais fais une simple vérification... Par contre, si tu as tout compris, bravo !

P.S. utilise < code> et </ code> quand tu veux écrire du code, c'est mieux s'il est mise en forme correctement (avec les espaces au début des lignes) dans tes messages.
0
jipegz Messages postés 2 Date d'inscription samedi 4 août 2007 Statut Membre Dernière intervention 9 août 2007
9 août 2007 à 02:54
Bonsoir à tous,

que j'emploie cette méthode ou une autre (empty, par exemple), j'obtiens toujours le même résultat : Au chargement de ma page, le message d'erreur apparaît déjà.

Je souhaiterai qu'aucun message n'apparaisse au chargement, et que la vérification se fasse une fois le bouton "Envoyé" activé.

J'retourne mon code dans tous les sens depuis deux jours, mais ayant débuté PHP depuis Dimanche seulement, je me sens un peu perdu même si pour l'instant je comprends mon code à 100%.

Est-ce que quelqu'un pourrait m'aider s'il vous plait ??

<edit>
Muarf au bout de deux jours de recherche je comprends, et c'est carrément tout con : <?php if($_POST['bouton']) {
instructions relative à l'envoi dans la base de données et à l'affichage du message d'erreur
}
?>

(où "bouton" est le nom donné au...bouton de soumission du formulaire)
Sérieux là j'ai franchement honte de moi...
</edit>
0
www.BlooServ.Net
27 janv. 2009 à 09:47
je me appele mickael je voudrais savoirs si sais posible de faire un formulaire de contacts de question merci de avences
0
acidenitr0s Messages postés 12 Date d'inscription lundi 19 septembre 2011 Statut Membre Dernière intervention 1 décembre 2012
30 oct. 2011 à 12:24
voici un code pour un formulaire de contact:

Formulaire :
        <form method=POST action=envoie.php >
          <table width="526" height="580" border="0" align="center" cellpadding="0">
            <tr>
              <td width="270">Votre Nom:</td>
              <td width="244"><input type=text name=Nom size=30></td>
            </tr>
            <tr>
              <td>Votre Email:</td>
              <td><input type=text name=Email size=30></td>
            </tr>
            <tr>
              <td>Sujet:</td>
              <td><input type=text name=Sujet size=30></td>
            </tr>
    <tr>
    <td><div align="center">Type: *</div></td>
  </tr>
  <tr>
    <td bgcolor="#FFFFFF" ><label>
      <input type="checkbox" name="Type" value="Commande" />
      Commande</label></td>
  </tr>
  <tr>
    <td><label>
      <input type="checkbox" name="Type" value="Livraison" />
      Livraison</label></td>
  </tr>
  <tr>
    <td><label>
      <input type="checkbox" name="Type" value="Annulation" />
      Annulation</label></td>
  </tr>
  <tr>
    <td><label>
      <input type="checkbox" name="Type" value="Clef-unique" />
      Clef Unique</label></td>
  </tr>
  <tr>
    <td><label>
      <input type="checkbox" name="Type" value="Autre" />
      Autre</label></td>
  </tr>
    <tr>
      <td colspan=2 ><div align="center">* 1 choix uniquement</div></td>
    </tr>
    <tr>
    <td colspan=2>Commentaires:<br>
      <textarea cols=55 rows=6 name=Commentaires:></textarea></td>
  </tr>
          </table>
          <br> <input type=submit value=Envoyer> - <input type=reset value=Annuler>
</form>


le fichier envoie.php :
<?php
$TO = "ton email";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($HTTP_POST_VARS)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
header ("Location: ton lien index.html" );
?>
0
acidenitr0s Messages postés 12 Date d'inscription lundi 19 septembre 2011 Statut Membre Dernière intervention 1 décembre 2012
30 oct. 2011 à 12:21
Bonjour
je ressort un peut ce topic mai plusieurs personnes essaye de faire la même chose que moi et voici comment faire.

voici le formulaire:
<form action=send_pic.php method=post enctype=multipart/form-data >
<input name="to" type="hidden" value="votre email" />
<input name="sujet" type="hidden" value="votre sujet" />
<table border="0">
<tr><td width="156">Votre Nom:</td>
  <td width="247"><input name="nom" type="text" size=30></td>
</tr>
<br>
<tr><td>Votre Email:</td>
  <td><input name="from" type="text" size=30></td>
  </tr>
<br>
<tr><td width="156">Cléf Unique :&nbsp;</td>
  <td width="247"><input name="clef" type="text" size=30></td>
</tr>
<br>
<tr><td>Votre Photo :&nbsp;</td>
  <td><input name="monfichier" type="file" /></td>
  </tr>
</table>
<br> 
<input type=submit value=Envoyer> --- <input type=reset value=Annuler>
</form>


le traitement (send_pic.php):
<html>
<body>
<div align="center">
<?
$name_file = $_FILES['monfichier']['name']; 
$source=$_FILES['monfichier']['tmp_name'];

move_uploaded_file($source, "./".$name_file); 

$extension=get_extension($name_file);

$type="text/plain";
if($type=="doc")
{
   $type="text/vnd.ms-word";
}
else if($type=="xls")
{
   $type="text/vnd.ms-excel";
}

$type2="image/png";

if($extension=="gif")
{
   $type2="image/gif";
}
else if($extension=="bmp")
{
   $type2="image/bmp";
}

function get_extension($filename)
{
   $parts = explode('.',$filename);
   $last = count($parts) - 1;
   $ext = $parts[$last];
   return $ext;
}

//----------------------------------
// Construction de l'entête
//----------------------------------

if($_POST['to']!="")
{
$boundary = "-----=".md5(uniqid(rand()));
$header = "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
$header .= "\r\n";

$msg = "Je vous informe que ceci est un message au format MIME 1.0 multipart/mixed.\r\n";

$msg .= "--$boundary\r\n";

$msg .= "Content-Type: $type; charset=\"iso-8859-1\"\r\n";
$msg .= "Content-Transfer-Encoding:8bit\r\n";
$msg .= "\r\n";
$msg .= $_POST['message'];
$msg .= "\r\n";

if($name_file!="")
{
$file = $name_file;
$fp = fopen($file, "r");  
$attachment = fread($fp, filesize($file));
fclose($fp);

$attachment = chunk_split(base64_encode($attachment));


$msg .= "--$boundary\r\n";
$msg .= "Content-Type: $type2; name=\"$file\"\r\n";
$msg .= "Content-Transfer-Encoding: base64\r\n";
$msg .= "Content-Disposition: inline; filename=\"$file\"\r\n";
$msg .= "\r\n";
$msg .= $attachment . "\r\n";
$msg .= "\r\n\r\n";
$msg .= "--$boundary--\r\n";
}

$destinataire = $_POST['to'];
$expediteur   = $_POST['from'];
$reponse      = $expediteur;

mail($destinataire, $_POST['sujet'], $msg,
     "Reply-to: $reponse\r\nFrom: $expediteur\r\nNom: $nom/r/n".$header);

}

if($name_file!="")
{
unlink($name_file);
}
echo "Mail envoyer";
print("<br>\n");
echo "<a href=.... >Retour a L'Accueil</a>";
?>
</div>
</body>
</html>


donc mon problème c'est que je reçois bien mon fichier mais je n'est pas les information qui ce trouve dans le formulaire " nom , email , clef "

Merci pour votre aide
0
acidenitr0s Messages postés 12 Date d'inscription lundi 19 septembre 2011 Statut Membre Dernière intervention 1 décembre 2012
2 nov. 2011 à 17:26
petit up pour mon problème svp ?

je n'y arrive vraiment pas ..

Merci
0
Bonjour celui fonctionne pour moi : tu as juste a modifié vers les lignes 50 , mettre ton email , un titre par exemple : Message du site
et éventuellement aussi le tete. voila , bonne journée

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<title>Nous contactez</title>


<center><?php
// Couleur du texte des champs si erreur saisie utilisateur
$color_font_warn="#FF0000";
// Couleur de fond des champs si erreur saisie utilisateur
$color_form_warn="#FFCC66";
// Ne rien modifier ci-dessous si vous n'êtes pas certain de ce que vous faites !
if(isset($_POST['submit'])){
	$erreur="";
	// Nettoyage des entrées
	while(list($var,$val)=each($_POST)){
	if(!is_array($val)){
		$$var=strip_tags($val);
	}else{
		while(list($arvar,$arval)=each($val)){
				$$var[$arvar]=strip_tags($arval);
			}
		}
	}
	// Formatage des entrées
	$f_1=trim(ucwords(eregi_replace("[^a-zA-Z0-9éèàäö\ -]", "", $f_1)));
	$f_2=strip_tags(trim($f_2));
	$f_3=trim(eregi_replace("[^0-9\ +]", "", $f_3));
	// Verification des champs
	if(strlen($f_1)<2){
		$erreur.="<li><b><span class='txterror'>Le champ « Nom* » est vide ou incomplet.</b></span>";
		$errf_1=1;
	}
	if(strlen($f_2)<2){
		$erreur.="<li><b><span class='txterror'>Le champ « Email* » est vide ou incomplet.</b></span>";
		$errf_2=1;
	}else{
		if(!ereg('^[-!#$%&\'*+\./0-9=?A-Z^_'a-z{|}~]+'.
		'@'.
		'[-!#$%&\'*+\/0-9=?A-Z^_'a-z{|}~]+\.'.
		'[-!#$%&\'*+\./0-9=?A-Z^_'a-z{|}~]+$',
		$f_2)){
			$erreur.="<li><b><span class='txterror'>Votre adresse e-mail n'est pas correcte.</b></span>";
			$errf_2=1;
		}
	}
	if(strlen($f_4)<2){
		$erreur.="<li><b><span class='txterror'>Le champ « Message* » est vide ou incomplet.</b></span>";
		$errf_4=1;
	}
	if($erreur==""){
		// Création du message
		$titre="Message de $f_1 du Site";
		$tete="De:Mon Site\n";
		$corps.="Nom* : ".$f_1."\n";
		$corps.="Email* : ".$f_2."\n";
		$corps.="Téléphone : ".$f_3."\n";
		$corps.="Message : ".$f_4."\n";
		if(mail("Ton email", $titre, stripslashes($corps), $tete)){
			$ok_mail="true";
		}else{
			$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
		}
	}
}
?>
<style type="text/css" media="screen">
<!--
INPUT { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
SELECT { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
TEXTAREA { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
.txterror { color: red; font-size: 16px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
.txtform { color: black; font-size: 20px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
.valeur { color: red; font-size: 16px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
.blue { color: blue; font-size: 16px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
-->
</style>
<span class='txtform'>
          <h4><span class='blue'><b><h2>Contact :</h4>
		</span>
<? if($ok_mail=="true"){ ?>
	<table width='60%' border='0' cellspacing='1' cellpadding='1'>
		<tr><td><span class='valeur'><b>Le message ci-dessous nous a bien été transmis, et nous vous en remercions.</b></span></td></tr>
		<tr><td>&nbsp;</td></tr>
		<tr><td><tt><?echo nl2br(stripslashes($corps));?></tt></td></tr>
		<tr><td>&nbsp;</td></tr>
		<tr><td><span class='valeur'>Nous vous répondrons dès que possible</span></td></tr>
	</table>
<? }else{ ?>
<form action='<? echo $PHP_SELF ?>' method='post' name='Form'>
<table width='60%' border='0' cellspacing='1' cellpadding='1'>
<? if($erreur){ ?><tr><td colspan='2' bgcolor='red'><span class='txterror'><font color='white'><b>&nbsp;ERREUR, votre message n'a pas été transmis</b></font></span></td></tr><tr><td colspan='2'><ul><?echo$erreur?></ul></td></tr><?}?>
<tr><td colspan='2'><span class='txterror'>Les champs marqué d'un * sont obligatoires</span></td></tr>
<tr><td width='30%'><span class='txtform'>Nom* :</span></td><td><input type='text' style='width:200 <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' size='24' border='0'></td></tr>
<tr><td width='30%'><span class='txtform'>Email* :</span></td><td><input type='text' style='width:200 <?if($errf_2==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_2' value='<?echo stripslashes($f_2);?>' size='24' border='0'></td></tr>
<tr><td width='30%'><span class='txtform'>Téléphone :</span></td><td><input type='text' style='width:200 <?if($errf_3==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_3' value='<?echo stripslashes($f_3);?>' size='24' border='0'></td></tr>
<tr><td width='30%'><span class='txtform'>Message* :</span></td><td><textarea style='width:360 <?if($errf_4==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_4' rows='6' cols='40'><?echo$f_4?></textarea></td></tr>
<tr><td width='30%'></td><td><input type='submit' name='submit' value='Envoyer' border='0'></td></tr>
</table>
</form>
<? } ?>
0