3 Replies Latest reply on Nov 21, 2012 10:38 AM by David_Powers

    Problème avec la page contact sur DREAMWEAVER CS5.5

    amiolevage

      J'ai un problème sur ma page contact de mon site, http://www.amio.fr je pense que mon script et le PHP ne sont pas bon. J'ai donc refait un formulaire beaucoup plus simple qui s'appelle :

       

      Form_contact.html

       

       

      <table width="738" border="0" cellspacing="0" cellpadding="0">

       

        <tr>

          <td height="233" align="left" valign="top">

                    <form id="form1" name="form1" method="post" action="PHP/envoyer.php">

            <p>

                      <label>Entreprise :

              <br /><input name="Entreprise" type="text" id="entreprise" size="50"/>

              </label>

            </p>

            <p>

                      <label>Nom, Prénom :

              <br /><input name="Nom" type="text" id="nom" size="50"/>

              </label>

            </p>

            <p>

                      <label>Adresse E-mail :

              <br /><input name="mail" type="text"id="mail" size="50" />

              </label>

            </p>

            <p>

                      <label>Votre message :

            <br /><textarea cols="70" rows="10" name="message" id="message" ></textarea>

                      </label>

            </p>

             <input type="submit" value="Envoyer le message"/>

                    </form>

           </td>

        </tr>

      </table>

       

      envoyer.php

       

      <?php

      if(isset($_POST['entreprise']) AND isset($_POST['nom']) AND isset($_POST['mail']) AND isset($_POST['message']))// Si les variables existent :

      {

                if($_POST['entreprise']!=NULL AND $_POST['nom']!=NULL AND $_POST['mail']!=NULL AND $_POST['message']!=NULL)// si on a quelque chose à enregistrer :

                {

                          $entreprise = stripslashes($_POST['entreprise']);

                          $nom = stripslashes($_POST['nom']);

                          $mail = stripslashes($_POST['mail']);

                          $message = stripslashes($_POST['message']);

       

                          $expediteur = "bruno@amiolevage.fr";

                          $expediteurIP = $_SERVER['REMOTE_ADDR'];

                          $titre = "1 nouveau message de l'entreprise: $entreprise";

                          $contenu = "$nom envoi le message suivant :\n\n$message \n\nAdresse E-mail du destinataire :$mail";

                          $headers = 'from:"AMIO Contact"<'.$mail.'>'."\n";

       

                          // Envoie du l'e-mail :

                          mail($expediteur, $expediteurIP, $titre, $contenu, $headers);

       

                          // Affichage "e-mail envoyé" :

                          echo "Votre message a bien été envoyé !";

                }

       

                else {

                          echo "Votre message n'a pas été envoyé ! Cause : Tous les champs doivent être rempli.";

                }

      }

      ?>



      après vérification et essais de plusieurs script cela ne fonctionne toujours pas : Je remplis mon formulaire sans problème et lorsque j'ai terminé j'appuis sur envoyer et la mon formulaire disparaît de l'écran pour laisser la place au message votre document à bien été envoyé et là plus rien ne se passe et le courrier je ne le reçois dans aucune de mes boîtes mails préalablement sélectionnées

       

      Est-ce que je pourrais avoir un petit coup de main afin de résoudre ce problème.

       

      Je vous en remercie d'avance

       

      A très bientôt

        • 1. Re: Problème avec la page contact sur DREAMWEAVER CS5.5
          David_Powers Adobe Community Professional (Moderator)

          Bienvenue aux forums Adobe. Le forum francophone se trouve ici: http://forums.adobe.com/community/international_forums/francais?view=discussions.

           

          Le problème se trouve dans l'envoie du courrier:

           

               mail($expediteur, $expediteurIP, $titre, $contenu, $headers);

           

          doît être:

           

               mail($expediteur, $titre, $contenu, $headers);

           

          Il y a autres problèmes de sécurité avec votre script. Il est très dangereux d'introduire dans la fonction mail() les donnés remplis dans un formulaire. Voir:
          http://www.phpsecure.info/v2/article/MailHeadersInject.php.

          • 2. Re: Problème avec la page contact sur DREAMWEAVER CS5.5
            amiolevage Level 1

            Bonjour David,

             

            Je te remercie pour ta réponse et j'ai encore un petit problème.

             

            J'ai refais tout mes scripts et maintenant ,

             

            CSS :

            td {font-weight: bold; text-align: left;}

            td.liste{text-align: left;}

            th {font-size: 2em; color: red; padding: 0;}

            </style>

            <style type="text/css" media="print">

            div.nepasvoir p:first-line {font-weight: bold;}

            tr#nepasimprimer {display: none;}

            </style>

            <style type="text/css" media="screen">

            div.nepasvoir {display: none;}

            td {padding: 0.25em 1px;}

            td.lesboutons{}

            </style>

             

             

            <script type="text/javascript" language="Javascript" >

            <!--

            function verification()

            {

                      if(document.formulaire.entreprise.value == "") {

              alert("Veuillez entrer votre le nom de votre entreprise svp");

              document.formulaire.entreprise.focus();

              return false;

                       }

              else

                        if(document.formulaire.nom.value == "") {

              alert("Veuillez entrer votre Nom et prénom svp");

              document.formulaire.nom.focus();

              return false;

                       }

              else

                        if(document.formulaire.email.value == "") {

              alert("Veuillez entrer votre adresse electronique svp");

              document.formulaire.email.focus();

              return false;

                       }

              else

                        if(document.formulaire.email.value.indexOf('@') == -1) {

              alert("Ce n'est pas une adresse electronique, verifiez la svp");

              document.formulaire.email.focus();

              return false;

                       }

              else

               sujetoption = -1

               for (i=0; i<formulaire.sujet.length; i++)

                         {

                         if(document.formulaire.sujet[i].checked){

               sujetoption = i

                         }

                        }

                         if (sujetoption == -1) {

                        alert("Veuillez choisir un sujet pour votre mail svp");

              return false;

                         }

               else

                      if(document.formulaire.texte.value == "") {

                        alert("Veuillez entrer le texte de votre message svp");

                        document.formulaire.texte.focus();

              return false;

                      }

            }

            //-->

            </script>

             

            Form_contact :                                      (DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/REC-html40/loose.dtd">)

             

            <form name='Formulaire' action='envoyer.php' method='post'>

                      <table cellspacing="0">

                                <th colspan="2">Formulaire de contact</th>

                                          <tr><td class="info">Votre Entreprise: </td><td class="champ"><input name='entreprise' type='text' size='50' class="writein"></td></tr>

                                          <tr><td class="info">Votre Nom et Prénom : </td><td class="champ"><input name='nom' type='text' size='50' class="writein"></td></tr>

                                          <tr><td class="info">Votre email</td><td class="champ"><input name='email' type='text' size='50' class="writein"></td></tr>

                                          <tr><td class="subject">Le motif de votre message</td><td class="liste">

                                  <input name='sujet' type='radio' value='renseignement'>Renseignement<br />

                                                    <input name='sujet' type='radio' value='demande'>Demande de prix<br />

                                                    <input name='sujet' type='radio' value='appel'>Appel téléphonique</td></tr>

                                          <tr><td class="contenu">Votre message</td><td class="contenant"><textarea name='texte' cols='50' rows='20' class="writein"></textarea></td></tr>

                                          <tr id="nepasimprimer"><td class="lesboutons"><input name='soumettre' type='submit' value='Envoyer'></td></tr>

                      </table>

                                <div class="nepasvoir">

                                          Tous les champs du formulaire <strong>doivent</strong> &ecirc;tre remplis.

                                </div>

            </form>

             

            envoyer.php

             

            <?php

            $adresse="bruno.launay@amio.fr";

            $from="From: $nom $entreprise<$email>\r\n";

            $from.="Reply-To: $nom $entreprise <$email>\n";

            $from.="X-priority:3\n";

            $texte="<html>";

            $texte.="$texte";

            $texte.="</html>";

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

            $from.="Content-Type: text/html"; 

            if (mail($adresse,$sujet,$texte,$from))

            echo("<center><font color=green><br><br><br><h2>Formulaire envoy&eacute; ! Nous vous r&eacute;pondrons rapidement. Merci!</h2></font><br><a href=/>Cliquez ici pour revenir &agrave; l'accueil</a></center>");

            ?>

             

            Maintanant mon formulaire part bien et je le reçois sur ma boîte mail,

             

            Réception :

             

            J'ai bien le Nom et Prénom de l'expéditeur

            J'ai aussi le nom de l'entreprise

            et la sélection du sujet

             

            Mais par-contre ma zone texte du message est vide alors que j'avais tapé du texte, j'ai cherché mais j'ai encore pas trouvé la solution.

             

            Pouvez-vous m'aider ?

             

            En ce qui concerne la sécurité, je verrais ceci à suivre mais je veux déja résoudre ce problème avant

             

            Je vous remercie d'avance

             

            A très bientôt

            • 3. Re: Problème avec la page contact sur DREAMWEAVER CS5.5
              David_Powers Adobe Community Professional (Moderator)

              Le problème se trouve ici:

               

              $texte="<html>";

              $texte.="$texte";

              $texte.="</html>";

               

              La valeur de $texte devient <html>, remplaçant la valeur envoyée par le formulaire. Il faut choisir une autre variable:

               

              $message = "<html>";

              $message .= $texte;

              $message .= "</html>";