Formulaire mail

Résolu
L42RY Messages postés 10 Date d'inscription samedi 29 décembre 2007 Statut Membre Dernière intervention 11 avril 2009 - 15 avril 2008 à 17:33
L42RY Messages postés 10 Date d'inscription samedi 29 décembre 2007 Statut Membre Dernière intervention 11 avril 2009 - 16 avril 2008 à 14:58
Bonjour à tous !
Merci d'avoir cliqué sur mon topic, car je suis dans la mouise xD. Mon problème vient de ce formulaire mail que j'ai récupéré sur le net. Voici le code :

<?php

if($_POST){

            //Récupération des données du formulaire----------------------------

            $cive = $_POST["cive"];
           
            $prenom = $_POST["prenom"];

            $nom = $_POST["nom"];

            $email = $_POST["email"];

            $tel = $_POST["tel"];

            $message = $_POST["message"];

            $subject = $_POST["subject"];

            //------------------------------------------------------------------

           

            //Gestion des erreurs de saisie-------------------------------------

            $erreurs = array();
           
            if( empty($cive)) $erreurs = "La case Civilite n'est pas correctement remplie.";

            if( empty($prenom)) $erreurs = "il manque votre prénom";

            if( empty($nom)) $erreurs = "il manque votre nom";

            if( empty($email)) $erreurs = "il manque votre email";

            if( empty($tel)) $erreurs = "il manque votre téléphone";

            if( empty($message)) $erreurs = "il manque votre message";

            //------------------------------------------------------------------

           

            if(empty($erreurs)) {

                        $from = $email;

                        $reply = $from;

                        $to = "larry.73@hotmail.fr"; //Mettez l'email de destination ici

                       

                        //Mise en forme du contenu au format HTML-----------------------
                       
                        $contenu .= "
Civilite: ".$cive;
                       
                        $contenu = "message de : ".$prenom." ".$nom;
                       
                        $contenu .= "
Tel: ".$tel;

                        $contenu .=      "
Message:
";

                        $contenu .= $message;

                        //--------------------------------------------------------------

                       

                        //Entêtes de formatage de l'email en mode HTML------------------

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

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

                        $headers .= 'From: '.$from."\n";

                        $reply = $headers."Reply-to: ".$reply."\n";

                        //---------------------------------------------------------------

                       

                        //Déclenchement de l'email et reroutage vers une autre page-----

                        $resultat = mail($to, $subject, $contenu, $reply);

                       

                        if($resultat) {

                                   echo "email envoyé";

                        } else {

                                   echo "Echec dans l'envoi de l'email";

                        }

                       

            } else {
   print("");
   print($erreurs);
   print("

");
            }

 

}

 

?>

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

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Envoi d'email</title>

</head>

 

<form action="<?php print $_SERVER["PHP_SELF"]; ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">
ASSOCIATION DES ANCIENS ELEVES DE SAINT-JOSEPH / SAINT-MARC

FICHE D'ACTUALISATION 2007

      ----

       

      Civilité : (Monsieur/Madame/Mademoiselle),

      " size="50" maxlength="100" />,

   
   
   
   
   
    ----

       

      Pr&eacute;nom :,

      " size="50" maxlength="100" />,

   

    ----

      Nom :,

      " size="50" maxlength="100" />,

   

    ----

      T&eacute;l&eacute;phone :,

      " size="50" maxlength="50" />,

   

    ----

      Votre email  :,

      " size="50" maxlength="100" />,

   

    ----

      Sujet du message :,

      " size="50" maxlength="100" />,

   

    ----

      Texte du message  :,

      <textarea name="message" cols="38" rows="10" id="message"><?php print $message; ?></textarea>,

   

    ----

                   ,

   

 

</form>

</html>

Il est plus lisible ici : pastebin.fr/1408.

A l'origine, il n'y a pas la variable "cive". C'est la seule que j'ai rajouté. Son but est de faire préciser à l'internaute si il est : Monsieur/Madame/Mademoiselle. Le problème ne concerne pas l'envoi du mail : le mail part bien. Mais quand je le reçois, tout les champ sont présent, mais pas "cive". C'est comme si il n'existait pas ! En clair, seul les champs d'origine sont présents dans l'email, avec leur contenu (ce qu'a tapé l'internaute), mais aucune ligne concernant civilité. Pourquoi ??? Car une fois que j'aurai compris comment rajouter un champ (enfin, l'inclure dans l'email reçu par moi après visite des internautes), je pourrais en rajouter des dizaines. Je vous remercie tous beaucoup pour vos futures réponses (si il y en a, et merci quand même si il n'y en a pas xDD). Bonne fin d'après midi à tous !!

8 réponses

nanti Messages postés 59 Date d'inscription samedi 14 avril 2007 Statut Membre Dernière intervention 2 avril 2010
16 avril 2008 à 08:58
C'est parce qu'il te manque le . avant le signe = !!!

$contenu .="
Age:".$age;

En fait, si tu regarde bien, ton 1er $contenu ne prend que le signe = et les autres prennent .= ...

Voilà d'où vient sûrement ton problème !!!!
3
nanti Messages postés 59 Date d'inscription samedi 14 avril 2007 Statut Membre Dernière intervention 2 avril 2010
15 avril 2008 à 18:14
Je pense que ton erreur vient de là :

$contenu .= "
Civilite: ".$cive;
                       
                        $contenu = "message de : ".$prenom." ".$nom;

en fait, tu devrais mettre :

$contenu = "Civilite: ".$cive;
                       
$contenu .= "
message de : ".$prenom." ".$nom;
0
L42RY Messages postés 10 Date d'inscription samedi 29 décembre 2007 Statut Membre Dernière intervention 11 avril 2009
15 avril 2008 à 23:38
Bonsoir Nanti ! Merci de ta réponse ! D'un coté, ta solution fonctionne. En effet, maintenant le champ Civilité est bien pris en compte dans l'email. Mais lorsque je rajoute un autre champ, comme l'âge :

                        $contenu = "Civilite: ".$cive;
                       
                        $contenu = "
Age: ".$age;
                       
                        $contenu .= "
message de : ".$prenom." ".$nom;
                       
                        $contenu .= "
Tel: ".$tel;

                        $contenu .=      "
Message:
";

                        $contenu .= $message;
(j'ai bien ajouté la variable $age aux autres niveaux du php, comme du html ;) )

Et bien le champ âge remplace le champ civilité dans l'email. En clair, je n'arrive pas à avoir les deux en même temps.
0
L42RY Messages postés 10 Date d'inscription samedi 29 décembre 2007 Statut Membre Dernière intervention 11 avril 2009
16 avril 2008 à 14:23
Merci beaucoup ! Je teste ça de suite !! ;)
0

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

Posez votre question
L42RY Messages postés 10 Date d'inscription samedi 29 décembre 2007 Statut Membre Dernière intervention 11 avril 2009
16 avril 2008 à 14:41
Ca fonctionne !!!!! Merci beaucoup Nanti !!!! Ralala j'suis bien content. Bonne après midi, et merci encore !!!!
0
nanti Messages postés 59 Date d'inscription samedi 14 avril 2007 Statut Membre Dernière intervention 2 avril 2010
16 avril 2008 à 14:46
De rien !!!

Bon après-midi à toi aussi et bonne contination pour la suite de ton site !!!

Cordialment,

Nanti
0
nanti Messages postés 59 Date d'inscription samedi 14 avril 2007 Statut Membre Dernière intervention 2 avril 2010
16 avril 2008 à 14:50
Je voulais dire : bonne continuation.

Désolé pour ceux qui lisent ce message de fin... (pour ceux que ça intéresse) C'est aujourd'hui l'anniv' de ma chère et tendre et j'ai déjà légèrement fêté cela !!!!

Bien à vous tous,

Nanti (qui marque n'imp' quand il a bu)
0
L42RY Messages postés 10 Date d'inscription samedi 29 décembre 2007 Statut Membre Dernière intervention 11 avril 2009
16 avril 2008 à 14:58
Et bien bon anniversaire à elle !!
0
Rejoignez-nous