Aide pour un formulaire ...

Fermé
Utilisateur anonyme - 19 avril 2009 à 13:15
chupa23 Messages postés 149 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 20 juillet 2009 - 19 avril 2009 à 18:08
Bonjour,

J'ai actuellement sur mon site un formulaire qui marche, mais j'aimerai lui amener quelques améliorations ....

Je souhaiterai que le visiteur soit obligé de remplir tout les champs pour pouvoir l'envoyer.
J'aimerai aussi que, au lieu d'envoyer le mail avec mon adresse et la sienne ( Ce qui fait qu'il peut voir mon adresse quand il reçoit le mail ), qu'il reçoive un mail, ou mon adresse n'apparait pas, et qu'il y ai un petit message de remerciment en bas ...

Quelqu'un pourrait m'aider ?

Merci beaucoup ...

Romain.

CODE :

Partie HTML :

<p align="center"><strong>Contact</strong></p>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="500">

  <form action="envoi.php" method="post" enctype="application/x-www-form-urlencoded" name="formulaire">
    <tbody>
      <tr>

        <td colspan="3"><strong>Envoyer un message</strong></td>

      </tr>

      <tr>

        <td>
        <div align="left">Votre nom :</div>
        </td>

        <td colspan="2"><input name="nom" size="45" maxlength="100" type="text"></td>

      </tr>

      <tr>

        <td width="17%">
        <div align="left">Votre mail :</div>
        </td>

        <td colspan="2"><input name="mail" size="45" maxlength="100" type="text"></td>

      </tr>

      <tr>

        <td>
        <div align="left">Sujet : </div>
        </td>

        <td colspan="2"><input name="objet" size="45" maxlength="120" type="text"></td>

      </tr>

      <tr>

        <td>
        <div align="left">Message : </div>
        </td>

        <td colspan="2"><textarea name="message" cols="50" rows="10"></textarea></td>

      </tr>

      <tr>

        <td></td>

        <td width="42%">
        <center>
        <input name="Submit" value="R&eacute;initialiser le formulaire" type="reset">
        </center>
        </td>

        <td width="41%">
        <center>
        <input name="Submit" value="Envoyer" type="submit">
        </center>
        </td>


      </tr>

    </tbody>
  </form>
</table>


Partie PHP

<?php 
$nom=$HTTP_POST_VARS['nom']; 
$mail=$HTTP_POST_VARS['mail']; 
$objet=$HTTP_POST_VARS['objet']; 
$message=$HTTP_POST_VARS['message']; 


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

$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; 

$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP"; 

$subject="Message de la Galerie de PSEH"; 
$destinataire="Of_course_darling@live.fr, $mail";
$body="Sujet: ".$objet."\r\n".$message; 
if (mail($destinataire,$subject,$body,$headers)) { 
echo "<br><br><br><br>Merci de m'avoir contacté ! Votre message a bien été envoyé, et vous en avez reçu une copie."; 
} else { 
echo "Une erreur s'est produite, veuillez recommencer ..."; 
} 
?>
<body style="background-image: url(couleur.jpg);">
</p>
<p>Vous pouvez maintenant continuer votre navigation sur le site via<br> la barre de navigation.Bonne visite !</p>

4 réponses

chupa23 Messages postés 149 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 20 juillet 2009 28
19 avril 2009 à 13:59
Je souhaiterai que le visiteur soit obligé de remplir tout les champs pour pouvoir l'envoyer : Utilise un If où tu vérifie si les champs sont remplis (tu peux utiliser isset ou empty) Ou/Et utilise du javascript pour vérifier avant l'envoi du formulaire.

Si j'ai bien compris le script envoie 2 mails un pour toi et un à l'adresse saisi (Of_course_darling@live.fr et $mail),
je pense que tu ne peux pas masquer ton adresse si tu envoi les deux en même temps.Fait deux envois.

Pour le message tu peux tester cela (pas sur du résultat):
$remerciement = "Message de remerciement";
$body="Sujet: ".$objet."\r\n".$message."\r\n".$remerciement;
0
Utilisateur anonyme
19 avril 2009 à 14:26
" Fait deux envois. " Désolé j'suis débutant en PHP, comment je peux faire deux envois ? ...



Ca ca marche, merci beaucoup !

$remerciement = "Message de remerciement";
$body="Sujet: ".$objet."\r\n".$message."\r\n".$remerciement;
0
Utilisateur anonyme
19 avril 2009 à 14:45
Pour l'instant, après quelques retouches, j'en suis la, ce qui me donne déjà un mail pas mal. Maintenant, pour envoyer deux mails, je fais quoi ?

<?php 
$nom=$HTTP_POST_VARS['nom']; 
$mail=$HTTP_POST_VARS['mail']; 
$objet=$HTTP_POST_VARS['objet']; 
$message=$HTTP_POST_VARS['message']; 


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

$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; 

$headers .= "From: Webmaster PSEH <$mail>\r\nReply-to : PSEH <Of_Course_Darling@live.fr>\nX-Mailer:PHP"; 

$subject="Message de la Galerie PSEH"; 
$destinataire="Of_course_darling@live.fr, $mail";
$entete=" Votre message a bien été envoyé. Voici votre copie.
__________________________________________________________";
$remerciement = "__________________________________________________________


Merci d'avoir visité ma galerie et à bientôt !";
$body=$entete."\r\n"."Expediteur: ".$nom."\r\n"."Sujet: ".$objet."\r\n"."Votre message : ".$message."\r\n".$remerciement;
if (mail($destinataire,$subject,$body,$headers)) { 
echo "<br><br><br><br>Merci de m'avoir contacté ! Votre message a bien été envoyé, et vous en avez reçu une copie."; 
} else { 
echo "Une erreur s'est produite, veuillez recommencer ..."; 
} 
?>
<body style="background-image: url(couleur.jpg);">
</p>
<p>Vous pouvez maintenant continuer votre navigation sur le site via<br> la barre de navigation.Bonne visite !</p>



Merci !
0
chupa23 Messages postés 149 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 20 juillet 2009 28
19 avril 2009 à 18:08
Tu modif cette ligne :
$destinataire="Of_course_darling@live.fr, $mail";
par :
$destinataire="$mail";

Puis celle ci :
if (mail($destinataire,$subject,$body,$headers)) {
par :
if (mail($destinataire,$subject,$body,$headers)) {
$destinataire = "Of_course_darling@live.fr";
mail($destinataire,$subject,$body,$headers);
0