Page 1 sur 2

Formulaire contact, sur site auto-hébergé

Posté : 24 mars 2021, 13:56
par RealJesus
Bonjour à toutes et à tous.

nouvellement fibré chez free, j'en ai profité pour héberger mon site web sur mon nas Synology DS416 play.

J'ai donc chopé un template gratuit en html/css responsive qui me plait bien. jusque là pas de problème. mais le formulaire contact ne fonctionne pas : normal, y a pas de php dans le code.

J'ai donc fureté sur le web pour essayer de comprendre, mais j'arrive pas à le faire fonctionner depuis mon template. Par contre quand je test avec un formulaire trouvé sur le web ça fonctionne, et je reçois bien un mail sur ma boite gmail.

code ok :
<?php  
//Ecrivez votre adresse e-mail entre les guillemets  
$destinataire='[email protected]';  
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "[http://www.w3.org/TR/html4/strict.dtd]">  
<html lang="fr">  
<head>  
  <title>Contact</title>  
  <style type="text/css">  
    form#contact{border:2px solid red;width:70%;padding:1em}  
    p#msg,p#adr,p#obj{border:2px solid green;margin-right:10%;padding:10px}  
    p#msg textarea{border:2px solid blue;height:30em;width:80%}  
    p#adr input,p#obj input{border:2px solid blue}  
    p.bt{text-align:center}  
    p.bt input{border:1px red solid;width:50%}  
  </style>  
  <meta http-equiv="content-type" content="Content-type:text/html;charset=iso-8859-1">  
</head>  
<body style="direction: ltr;">  
<h1>Contact</h1>
<?php  
$Previsualiser='<p class="bt">  
<input type="submit" name="previsualiser" tabindex="3" value="Prévisualiser"></p>';  
$Envoi="\n".'<p class="bt">  
<input name="envoi" tabindex="4" value="Envoyer" type="submit"></p>';  
if (isset($_POST['message']))  
  {  
    // La variable $verif va nous permettre d'analyser si la sémantique de l'email est bonne  
    $verif='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#';  
    //quelques remplacements pour les specialchars  
    $message=preg_replace('#(<|>)#', '-', $_POST['message']);  
    $message=str_replace('"', "'",$message);  
    $message=str_replace('&', 'et',$message);  
    $objet=preg_replace('#(<|>)#', '-', $_POST['objet']);  
    $objet=str_replace('"', "'",$objet);  
    $objet=str_replace('&', 'et',$objet);  
    // On assigne et/ou protège nos variables  
    $votremail=stripslashes(htmlentities($_POST['votremail']));  
    $message=stripslashes(htmlspecialchars($message));  
    $objet=stripslashes(htmlspecialchars($objet));  
    //input envoi/previsualiser  
    $envoi=htmlentities($_POST['envoi']);  
    $previsualiser=htmlentities($_POST['previsualiser']);  
    //on enlève les espaces  
    $votremail=trim($votremail);  
    $message=trim($message);  
    $objet=trim($objet);  

    $apercu_resultat='<p>Aperçu du résultat :</p>';  

    /*On vérifie si l'e mail et le message sont pleins, et on agit en fonction.  
      (on affiche Apercu du resultat, tel ou tel champ est vide, etc...*/  
    //Si ca ne vas pas (mal rempli, mail non valide...)  
    if((empty($message))or(empty($objet))or(!preg_match($verif,$votremail)))  
      {  
        //les 3 champs sont vides  
        if(empty($votremail)and(empty($message))and(empty($objet)))  
          {  
            echo '<p>Tous les champs sont vides.</p>';  
            $message='';$votremail='';$objet='';$apercu_resultat='';  
          }  
        //un des champs est vide  
        else  
          {  
            if(!preg_match($verif,$votremail))  
              echo'<p>Votre adresse e-mail n\'est pas valide.</p>';  
            else  
            {  
              echo'<p>Il faut remplir tous les champs !</p>';  
              if(empty($message))  
                $apercu_resultat='';  
            }  
          }  
      }  
    //Si les deux sont pleins et que l'adresse est valide, on envoie on on prévisualise sans envoi  
    else  
      {  
        $domaine=preg_replace('#[^@]+@(.+)#','$1',$votremail);  
        $DomaineMailExiste=checkdnsrr($domaine,'MX');  
        if(!$DomaineMailExiste)  
          echo'<p>Le nom de domaine de l\'adresse e-mail que vous avez donné n\'existe pas.</p>';  
        elseif(!empty($previsualiser))  
            {  
              $apercu_resultat='<p>Votre message et votre adresse e-mail sont valides et prêts à être envoyés.  
              <br>Vous n\'avez plus qu\'à cliquer sur le bouton "Envoyer".<br>Prévisualisation :</p>';  
              $Previsualiser='';  
            }  
        elseif(!empty($envoi))  
            {  
              $objet='[envoyé depuis mon site web] : '.$objet;  
              $headers='From:'.$votremail."\r\n".'To:'.$mail."\r\n".'Subject:'.$objet."\r\n".'Content-type:text/plain;charset=iso-8859-1'."\r\n".'Sent:'.date('l, F d, Y H:i');  
              if(mail($destinataire,$objet,$message,$headers))  
              {  
                echo '<p>Votre message a bien été envoyé. Merci.</p><p><a href="/">Retour à la page d\'accueil</a></p>';  
                $Envoi='';  
                $Previsualiser='';  
              }  
              else  
                echo'<p>Un problème est survenu durant l\'envoi du mail.</p>';  
            }  
        else  
          echo'<p>Une condition innatendue est survenue lors de l\'exécution du script.</p>';  
      }  
echo $apercu_resultat;  
  }  
else  
  {  
  echo '<p>Vous pouvez utiliser ce formulaire pour me contacter.</p>';  
  $votremail='';$message='';  
  }  
$bas_formulaire=$Previsualiser.$Envoi;  
?>  
<form id='contact' method="post" action="<?php echo $_SERVER['PHP_SELF'];?>" enctype="multipart/form-data">  
  <p id='obj'><label for='objet'>Objet de votre message :<br>  
  <input type='text' name='objet' id='objet' tabindex='10' size='30'></label></p>   

  <p id="adr"><label for="mail">Votre Adresse E-mail<br>  
  <input name="votremail" tabindex="20" size="30" type="text" id="mail" value="<?php echo $votremail; ?>"></label></p>  
    
  <p id="msg"><label for="message">Votre message<br>  
  <textarea tabindex="30" rows="20" cols="120" name="message" id="message"><?php echo $message; ?></textarea>  
  </label></p>  
<?php echo $bas_formulaire;?>  
</form>  
</body>  
</html>
par contre quand j'essaye de le transposer sur mon template, ça ne fonctionne pas... et là je m'arrache les cheveux

si vous voulez faire un test : fassihb.synology.me

pour le template :
<?php  
//Ecrivez votre adresse e-mail entre les guillemets  
$destinataire='[email protected]';  
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Fassih Belmokhtar - Photographe indépendant" />
	<meta name="keywords" content="blog, business card, creative, creative portfolio, cv theme, online resume, personal, portfolio, professional cv, responsive portfolio, resume, resume theme, vcard" />
	<meta name="author" content="Fassih Belmokhtar" />
    <title>Fassih Belmokhtar - Photographe indépendant</title>
  <!--favicon-img--> 
   <link rel="icon" type="image/png" href="images/favicon.png">
   <!--favicon-img-->
   <!--main css file should not be removed -->
    <link rel="stylesheet" href="css/index.css">
    <!--main css file-->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.2.6/gsap.min.js"></script>
</head>
<body>
    <!--contains all the div-->
    <div id="all">
    <!--mouse  follower-->
        <div class="cursor"></div>
    <!--mouse  follower-->
    <!--loader-->
        <div id="loader">
            <span class="color">Fassih</span>BELMOKHTAR 
        </div>
    <!--loader-end-->
    <!--link-screen-->
        <div id="breaker">
        </div>
        <div id="breaker-two">
        </div>
    <!--link-screen-->
        <!--Main-Section-->
        <!--Navigator-fullscreen-->
        <div id="navigation-content">
            <div class="logo">
                <img src="images/willy wonka logo.png" alt="logo">
            </div>
            <div class="navigation-close">
                <span class="close-first"></span>
                <span class="close-second"></span>
            </div>
            <div class="navigation-links">
                <a href="#" data-text="RETOUR" id="home-link" >RETOUR</a>
                <a href="#" data-text="À PROPOS" id="about-link" >À PROPOS</a>
                <a href="#" data-text="PORTFOLIO" id="portfolio-link" >PORTFOLIO</a>
                <a href="#" data-text="ASTRONOMIE" id="blog-link" >ASTRONOMIE</a>
                <a href="#" data-text="CONTACT" id="contact-link" >CONTACT</a>
            </div>
        </div>
        <!--Navigator-Fullscreen END-->
          <!--Home Page-->
        <!--Menubar-->
        <div id="navigation-bar">
            <img src="images/willy wonka logo.png" alt="logo">
            <div class="menubar">
                <span class="first-span"></span>
                <span class="second-span"></span>
                <span class="third-span"></span>
            </div>
        </div>
        <!--Menubar End-->
          <!--Header-->
        <div id="header">
            <div id="particles"></div>
              <!--Social Media Links-->
            <div class="social-media-links">
               <a href="#"><img src="images/instagram logo.png" class="social-media" alt="instagram-logo"></a><!--Your instagram homepage link inser in place of "#"-->
                <a href="#"><img src="images/facebook logo.png" class="social-media" alt="facebook-logo"></a>
                <a href="#"><img src="images/linkedin logo.png" class="social-media" alt="linkedin-logo"></a>
                <a href="#"><img src="images/twitter logo.png" class="social-media" alt="twitter-logo"></a>

            </div>
            <!--Social Media Links end-->
            <div class="header-content">
                <div class="header-content-box">
                <div class="firstline"><span class="color">Fassih </span>Belmokhtar</div>
                <div class="secondline">
                Je suis
            <span class="txt-rotate color" data-period="1200"data-rotate='[ " Photographe.", " Freelance.", " Astronome Amateur." ]'></span>
            <span class="slash">|</span>
        </div>
                    <div class="contact">
                <a href="Mailto:#"><img src="images/mail.png" alt="email-pic" class="contactpic"></a><!--Your email Id write in place of "#"-->
                <a href="Tel:#"><img src="images/call.png" alt="phone-pic" class="contactpic"></a><!--Your telephone number Id write in place of "#"-->
                    </div>    
            </div>
            </div>
            <!--header image-->
            <div class="header-image">
            <img src="images/man.jpg" alt="logo">
            </div>
            <!--header image end-->
        </div>
           <!--Header End-->
        <!--HomePage End-->
        <!--Main-Section End-->
        <!--about-->
        <div id="about">
            <div class="color-changer">
            <div class="color-panel">
                <img src="images/gear.png" alt="">
            </div>
            <div class="color-selector">
                <div class="heading">Custom Colors</div>
                <div class="colors">
                    <ul >
                    <li>
                        <a href="#0" class="color-red " title="color-red"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-purple" title="color-purple"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-malt" title="color-malt"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-green" title="color-green"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-blue" title="color-blue"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-orange" title="color-orange"></a>
                    </li>
                    </ul>
                </div>
            </div>
            </div>
            <!--about content-->
            <div id="about-content">
                <div class="about-header">
                    À propos <span class="color">de moi</span>
                    <span class ="header-caption">Faisons <span class="color"> connaissance.</span></span>
                </div>
                <div class="about-main">
            <div class="about-first-paragraph wow">
            <!--about description-->
               <span class="about-first-line">
                    Je suis 
                    <span class="color">photographe indépendant</span>
                     basé à Thonon-Les-Bains, en Haute-Savoie </span>
                     <br>
               <span class="about-second-line"> With 20 years of experience as a professional Web developer, I have acquired the skills and knowledge necessary to make your project a success. I enjoy every step while working.</span>
               <div class="cv">
                <a href="#"><button>Download <span class="colors">CV</span></button></a>
            </div>
            </div>
            <!--about picture-->
            <div class="about-img">
                <img src="images/about.jpg" alt="Your Image">
            </div>
            </div>
    
            </div>
            <!--services start-->
            <div id="services">
                <div class="color-changer">
                    <div class="color-panel">
                        <img src="images/gear.png" alt="">
                    </div>
                    <div class="color-selector">
                        <div class="heading">Custom Colors</div>
                        <div class="colors">
                            <ul >
                            <li>
                                <a href="#0" class="color-red " title="color-red"></a>
                            </li>
                            <li>
                                <a href="#0" class="color-purple" title="color-purple"></a>
                            </li>
                            <li>
                                <a href="#0" class="color-malt" title="color-malt"></a>
                            </li>
                            <li>
                                <a href="#0" class="color-green" title="color-green"></a>
                            </li>
                            <li>
                                <a href="#0" class="color-blue" title="color-blue"></a>
                            </li>
                            <li>
                                <a href="#0" class="color-orange" title="color-orange"></a>
                            </li>
                            </ul>
                        </div>
                    </div>
                    </div>
            <!--services header-->
                    <div class="services-heading wow">
                        <span class="color">My</span> Services
                    </div>
            <!--services header end-->
            <!--services content-->
                    <div class="services-content">
                           <div class="service-one service wow">
                               <div class="service-img">
                               <img src="images/coding.png" alt="service-one">
                               </div>
                               <div class="service-description">
                                <h2>Web Designing</h2>
                                <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quod quibusdam possimus</p>
                               </div>
                           </div>
                           <div class="service-two service wow">
                               <div class="service-img">
                               <img src="images/instagram.png" alt="service-two">
                               </div>
                               <div class="service-description">
                                <h2>Social Media</h2>
                                <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quod quibusdam possimus</p>
                               </div>
                           </div>
                           <div class="service-three service wow">
                            <div class="service-img">
                               <img src="images/bulb.png" alt="service-three">
                            </div>
                            <div class="service-description">
                                <h2>Creative Design</h2>
                                <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quod quibusdam possimus</p>
                            </div>
                        </div>
                    </div>
            </div>
            <!--services content end-->
            <!--services end-->
            <div id="skills">
                <div class="skills-header">
                     My <span class="color"> Skills</span>
                </div>
                <div class="skills-content " style="text-align: center;">
                    <div class="skill-html skill">
                        <div class="skill-text">
                    <div class="html">
                        HTML/CSS
                    </div>
                        </div>
                    <div class="html-prog wow prog">
                 <div class="html-progress wow">95%</div>
                    </div>
                    </div>
                    <div class="skill-html skill">
                        <div class="skill-text">
                    <div class="html">
                      Javascript
                    </div>
                        </div>
                    <div class="html-prog wow prog">
                 <div class="js-progress wow">90%</div>
                    </div>
                    </div>
                    <div class="skill-html skill">
                        <div class="skill-text">
                    <div class="html">
                        Adobe Ps
                    </div>
                        </div>
                    <div class="html-prog wow prog">
                 <div class="adobe-progress wow">83%</div>
                    </div>
                    </div>
                    <div class="skill-html skill">
                        <div class="skill-text">
                    <div class="html">
                        PHP
                    </div>
                        </div>
                    <div class="html-prog wow prog">
                 <div class="php-progress wow">87%</div>
                    </div>
                    </div>
                    <div class="skill-html skill">
                        <div class="skill-text">
                    <div class="html">
                        JQuery
                    </div>
                        </div>
                    <div class="html-prog wow prog">
                 <div class="jquery-progress wow">94%</div>
                    </div>
                    </div>
                    <div class="skill-html skill">
                        <div class="skill-text">
                    <div class="html">
                        SEO
                    </div>
                        </div>
                    <div class="html-prog wow prog">
                 <div class="seo-progress wow">84%</div>
                    </div>
                    </div>
                </div>
            </div>
    <!--copyright-section You Can Remove After Downloading-->
            <div class="footer">
             <div class="footer-text">
                 <img src="./images/copyright.png" alt="copyright-img" class="images" height="14px"> Fassih Belmokhtar - 2021
             </div>
            </div>
    <!--copyright-section-->
        </div>
        <!--about end-->
        <!--portfolio-->
        <div id="portfolio">
            <div class="color-changer">
                <div class="color-panel">
                    <img src="images/gear.png" alt="">
                </div>
                <div class="color-selector">
                    <div class="heading">Custom Colors</div>
                    <div class="colors">
                        <ul >
                        <li>
                            <a href="#0" class="color-red " title="color-red"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-purple" title="color-purple"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-malt" title="color-malt"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-green" title="color-green"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-blue" title="color-blue"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-orange" title="color-orange"></a>
                        </li>
                        </ul>
                    </div>
                </div>
                </div>
            <div class="portfolio-header"> <span class="color"> My </span> Portfolio
            <span class ="header-caption"> Some Of My <span class="color"> Works</span></span></div>
             <div id="portfolio-content">
                 <div class="portfolio portfolio-first">
                     <div class="portfolio-image">
                        <img src="images/portfolio-first.jpg" alt="portfolio-first">
                     </div>
                     <div class="portfolio-text">
                         <h2>App Idea</h2>
                         <p>Lorem, ipsum dolor sit amet consectetur adipisicing elit. Ad ut optio repellat cupiditate 
                             expedita eius dignissimos. Id cumque placeat minima ad laudantium suscipit voluptatem ducimus</p>
                         <div class="button"><a href="#"><button><span class="index"> View Project<i class="gg-arrow-right"></i></span></button></a></div>
                     </div>
                 </div>
                 <div class="portfolio portfolio-second">
                    <div class="portfolio-image">
                        <img src="images/portfolio-second.jpg" alt="portfolio-second">
                    </div>
                    <div class="portfolio-text">
                        <h2>Web Designing</h2>
                        <p>Lorem ipsum dolor sit, amet consectetur adipisicing elit. Id cumque placeat minima ad laudantium suscipit
                             voluptatem ducimus. Id cumque placeat minima ad laudantium suscipit voluptatem ducimus</p>
                        <div class="button"><a href="#"><button><span class="index"> View Project<i class="gg-arrow-right"></i></span></button></a></div>
                    </div>
                </div>
             
                <div class="portfolio portfolio-third">
                    <div class="portfolio-image">
                        <img src="images/portfolio-third.jpg" alt="portfolio-third">
                    </div>
                    <div class="portfolio-text">
                        <h2>UI Designing</h2>
                        <p>Lorem, ipsum dolor sit amet consectetur adipisicing elit. Ad ut optio repellat cupiditate expedita eius dignissimos
                            .. Id cumque placeat minima ad laudantium suscipit voluptatem ducimus</p>
                        <div class="button"><a href="#"><button><span class="index"> View Project<i class="gg-arrow-right"></i></span></button></a></div>
                    </div>
                </div>
                <div class="portfolio portfolio-fourth">
                    <div class=" portfolio-image">
                        <img src="images/portfolio-fourth.jpg" alt="portfolio-fourth">
                    </div>
                    <div class="portfolio-text">
                        <h2>Wow Graphics</h2>
                        <p>Lorem, ipsum dolor sit amet consectetur adipisicing elit. Ad ut optio repellat cupiditate
                             expedita eius dignissimos. Id cumque placeat minima ad laudantium suscipit voluptatem ducimus</p>
                        <div class="button"><a href="#"><button><span class="index"> View Project<i class="gg-arrow-right"></i></span></button></a></div>
                    </div>
                </div>
                 </div>
                    <!--copyright-section You Can Remove After Downloading-->
            <div class="footer">
                <div class="footer-text">
                    <img src="./images/copyright.png" alt="copyright-img" class="images" height="14px"> Fassih Belmokhtar - 2021
                </div>
               </div>
       <!--copyright-section-->
             </div>
        <!--portfolio end-->
        <!--blog-->
        <div id="blog">
            <div class="color-changer">
                <div class="color-panel">
                    <img src="images/gear.png" alt="">
                </div>
                <div class="color-selector">
                    <div class="heading">Custom Colors</div>
                    <div class="colors">
                        <ul >
                        <li>
                            <a href="#0" class="color-red " title="color-red"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-purple" title="color-purple"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-malt" title="color-malt"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-green" title="color-green"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-blue" title="color-blue"></a>
                        </li>
                        <li>
                            <a href="#0" class="color-orange" title="color-orange"></a>
                        </li>
                        </ul>
                    </div>
                </div>
                </div>
        <div class="blog-header"> Blogs</span>
            <span class ="header-caption"> My Latest <span class="color"> blog posts.</span></span></div>
            <div class="blog-content">
                 <div class="blogs">
                     <a href="#">
                     <div class="img">
                         <img src="images/post-one.jpg" alt="blog-one">
                        <div class="blog-date">8 May,20</div>
                     </div>
                     <div class="blog-text">
                         <h3>Harleys In Hawaai</h3>
                         <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Possimus alias dolore recusandae illum, corrupti quo 
                             veniam saepe aliquid! Quis voluptates ratione consequuntur vel, perferendis cum provident? Magnam fugiat voluptas
                              libero.</p>
                     </div></a>
                 </div>      
                 <div class="blogs">
                    <a href="#">
                    <div class="img">
                        <img src="images/post-two.jpg" alt="blog-two">
                        <div class="blog-date">16 Jan,20</div>
                    </div>
                    <div class="blog-text">
                        <h3>Key To Be Productive</h3>
                        <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Incidunt maiores, 
                            recusandae cupiditate ducimus a non tempora, architecto obcaecati eaque ipsum assumenda harum dolorum iusto tenetur
                             eius eligendi dolor magnam sit!</p>
                    </div></a>
                </div>      
                <div class="blogs">
                    <a href="#">
                    <div class="img">
                        <img src="images/post-three.jpg" alt="blog-three">
                        <div class="blog-date">30 Nov,19</div>
                    </div>
                    <div class="blog-text">
                        <h3>Caffeine Addict</h3>
                        <p>Lorem ipsum, dolor sit amet consectetur adipisicing elit. Nemo nostrum impedit 
                            ipsam perspiciatis ratione sapiente quasi optio reprehenderit, labore consequuntur suscipit cum quas.
                             Officiis dolorem asperiores, ut necessitatibus quas doloremque?</p>
                    </div></a>
                </div>
                <div class="blogs">
                    <a href="#">
                    <div class="img">
                        <img src="images/post-four.jpg" alt="blog-four">
                        <div class="blog-date">6 Jul,19</div>
                    </div>
                    <div class="blog-text">
                        <h3>Web Development</h3>
                        <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorem, veniam ratione quam vitae,
                             quibusdam explicabo rem debitis velit ipsa repellat, impedit nulla fuga? Amet corporis praesentium quae.
                              Sed, quibusdam necessitatibus.</p>
                    </div></a>
                </div>  
                <div class="blogs">
                    <a href="#">
                    <div class="img">
                        <img src="images/post-five.jpg" alt="blog-five">
                        <div class="blog-date">1 Jun,19</div>
                    </div>
                    <div class="blog-text">
                        <h3>Work From Home</h3>
                        <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga sunt eum necessitatibus rem 
                            dignissimos nulla mollitia cumque, provident officiis non vitae? Animi aut doloremque illum, soluta hic minus 
                            sint explicabo..</p>
                    </div></a>
                </div>  
                <div class="blogs">
                    <a href="#">
                    <div class="img">
                        <img src="images/post-six.jpg" alt="blog-six">
                        <div class="blog-date">28 Feb,19</div>
                    </div>
                    <div class="blog-text">
                        <h3>Business Trip</h3>
                        <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Explicabo tempora dolorum fuga ratione, unde, 
                            ex quaerat iste numquam nemo nihil nobis rem sint quia recusandae dignissimos quos ut rerum nam.</p>
                    </div></a>
                </div>        
            </div>
               <!--copyright-section You Can Remove After Downloading-->
               <div class="footer">
                <div class="footer-text">
                    <img src="./images/copyright.png" alt="copyright-img" class="images" height="14px"> Fassih Belmokhtar - 2021
                </div>
               </div>
       <!--copyright-section-->
        </div>
        <!--blog end-->
        <!--contact-->
     <div id="contact">
        <div class="color-changer">
            <div class="color-panel">
                <img src="images/gear.png" alt="">
            </div>
            <div class="color-selector">
                <div class="heading">Custom Colors</div>
                <div class="colors">
                    <ul >
                    <li>
                        <a href="#0" class="color-red " title="color-red"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-purple" title="color-purple"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-malt" title="color-malt"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-green" title="color-green"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-blue" title="color-blue"></a>
                    </li>
                    <li>
                        <a href="#0" class="color-orange" title="color-orange"></a>
                    </li>
                    </ul>
                </div>
            </div>
            </div>
         <div class="contact-header">Contactez <span class="color"> Moi</span>
        <div class="contact-header-caption"> <span class="color"> Get</span> In Touch.</div></div>
        <div class="contact-content">
            <!--Contact form-->
             <div class="contact-form">
                 <div class="form-header">
                     Écrivez Moi
                 </div>
<?php  
                    $Previsualiser='<p class="bt">  
                        <input type="submit" name="previsualiser" tabindex="3" value="Prévisualiser"></p>';  
                    $Envoi="\n".'<p class="bt">  
                        <input name="envoi" tabindex="4" value="Envoyer" type="submit"></p>';  
                    if (isset($_POST['message']))  
                  {  
                    // La variable $verif va nous permettre d'analyser si la sémantique de l'email est bonne  
                    $verif='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#';  
                    //quelques remplacements pour les specialchars  
                    $message=preg_replace('#(<|>)#', '-', $_POST['message']);  
                    $message=str_replace('"', "'",$message);  
                    $message=str_replace('&', 'et',$message);  
                    $objet=preg_replace('#(<|>)#', '-', $_POST['objet']);  
                    $objet=str_replace('"', "'",$objet);  
                    $objet=str_replace('&', 'et',$objet);  
                    // On assigne et/ou protège nos variables  
                    $votremail=stripslashes(htmlentities($_POST['votremail']));  
                    $message=stripslashes(htmlspecialchars($message));  
                    $objet=stripslashes(htmlspecialchars($objet));  
                    //input envoi/previsualiser  
                    $envoi=htmlentities($_POST['envoi']);  
                    $previsualiser=htmlentities($_POST['previsualiser']);  
                    //on enlève les espaces  
                    $votremail=trim($votremail);  
                    $message=trim($message);  
                    $objet=trim($objet);  

                    $apercu_resultat='<p>Aperçu du résultat :</p>';  

                    /*On vérifie si l'e mail et le message sont pleins, et on agit en fonction.  
                      (on affiche Apercu du resultat, tel ou tel champ est vide, etc...*/  
                    //Si ca ne vas pas (mal rempli, mail non valide...)  
                    if((empty($message))or(empty($objet))or(!preg_match($verif,$votremail)))  
                      {  
                        //les 3 champs sont vides  
                        if(empty($votremail)and(empty($message))and(empty($objet)))  
                          {  
                            echo '<p>Tous les champs sont vides.</p>';  
                            $message='';$votremail='';$objet='';$apercu_resultat='';  
                          }  
                        //un des champs est vide  
                        else  
                          {  
                            if(!preg_match($verif,$votremail))  
                              echo'<p>Votre adresse e-mail n\'est pas valide.</p>';  
                            else  
                            {  
                              echo'<p>Il faut remplir tous les champs !</p>';  
                              if(empty($message))  
                                $apercu_resultat='';  
                            }  
                          }  
                      }  
                    //Si les deux sont pleins et que l'adresse est valide, on envoie on on prévisualise sans envoi  
                    else  
                      {  
                        $domaine=preg_replace('#[^@]+@(.+)#','$1',$votremail);  
                        $DomaineMailExiste=checkdnsrr($domaine,'MX');  
                        if(!$DomaineMailExiste)  
                          echo'<p>Le nom de domaine de l\'adresse e-mail que vous avez donné n\'existe pas.</p>';  
                        elseif(!empty($previsualiser))  
                            {  
                              $apercu_resultat='<p>Votre message et votre adresse e-mail sont valides et prêts à être envoyés.  
                              <br>Vous n\'avez plus qu\'à cliquer sur le bouton "Envoyer".<br>Prévisualisation :</p>';  
                              $Previsualiser='';  
                            }  
                        elseif(!empty($envoi))  
                            {  
                              $objet='[envoyé depuis mon site web] : '.$objet;  
                              $headers='From:'.$votremail."\r\n".'To:'.$mail."\r\n".'Subject:'.$objet."\r\n".'Content-type:text/plain;charset=iso-8859-1'."\r\n".'Sent:'.date('l, F d, Y H:i');  
                              if(mail($destinataire,$objet,$message,$headers))  
                              {  
                                echo '<p>Votre message a bien été envoyé. Merci.</p><p><a href="/">Retour à la page d\'accueil</a></p>';  
                                $Envoi='';  
                                $Previsualiser='';  
                              }  
                              else  
                                echo'<p>Un problème est survenu durant l\'envoi du mail.</p>';  
                            }  
                        else  
                          echo'<p>Une condition innatendue est survenue lors de l\'exécution du script.</p>';  
                      }  
                echo $apercu_resultat;  
                  }  
                else  
                  {  
                  echo '<p>Vous pouvez utiliser ce formulaire pour me contacter.</p>';  
                  $votremail='';$message='';  
                  }  
                $bas_formulaire=$Previsualiser.$Envoi;  
                ?>
                 <form id="myForm" method="post" action="<?php echo $_SERVER['PHP_SELF'];?>" enctype="multipart/form-data">
                    <div class="input-line">
                        <input  id="name" type="text" placeholder="Name" class="input-name" required>
                        <input id="email" type="email" placeholder="Email"  class="input-name" value="<?php echo $votremail; ?>" required>
                    </div>
                    <input type="text" id="subject" placeholder="subject" class="input-subject" required>
                    <textarea id ="body" class="input-textarea" placeholder="message" name="message" required><?php echo $message; ?></textarea>
                    <button type="submit" id ="submit" value="send">Envoyer</button>
<?php echo $bas_formulaire;?>  
</form>               
             </div>
            <!--Contact form-->
            <!--Contact information-->
             <div class="contact-info">
                <div class="contact-info-header">
                    Contact Info
                </div>
                <div class="contact-info-content">
                <div class="contect-info-content-line">
                    <img src="./images/icon-name.png" class="icon" alt="name-icon">
                    <div class="contact-info-icon-text">
                        <h6>Nom</h6>
                        <p>Fassih Belmokhtar</p>
                  </div>
                </div>
                <div class="contect-info-content-line">
                  <img src="./images/icon-location.png" class="icon" alt="location-icon">
                  <div class="contact-info-icon-text">
                      <h6>Localisation</h6>
                      <p>Haute-Savoie, France</p>
                </div>
              </div>
              <div class="contect-info-content-line">
                  <img src="./images/icon-phone.png" class="icon" alt="phone-icon">
                  <div class="contact-info-icon-text">
                      <h6>Téléphone</h6>
                      <p>+33651520353</p>
                </div>
              </div>
              
              <div class="contect-info-content-line">
                  <img src="./images/icon-email.png" class="icon" alt="email-icon">
                  <div class="contact-info-icon-text">
                      <h6>Email</h6>
                      <p>[email protected]</p>
                </div>
              </div>
                </div>
            <!--Contact information end-->
           </div>
        </div>
                    <!--copyright-section You Can Remove After Downloading-->
                    <div class="footer">
                        <div class="footer-text">
                            <img src="./images/copyright.png" alt="copyright-img" class="images" height="14px"> Fassih Belmokhtar - 2021
                        </div>
                       </div>
               <!--copyright-section-->
     </div>
        <!--contact end-->
    </div>
    <!--all the divisions-->
    <script src="js/jquery.min.js"></script>
    <script src="js/index.js"></script>


</body>
</html>
Je sais que la longueur du poste va en rebuter plus d'un, et je vous remercie par avance pour l'aide que vous voudrez bien m'apporter :)

Merci d'avance.

Re: Formulaire contact, sur site auto-hébergé

Posté : 24 mars 2021, 14:18
par two3d
Ya un message d'erreur venant de PHP ?

Re: Formulaire contact, sur site auto-hébergé

Posté : 24 mars 2021, 14:21
par RealJesus
Ya un message d'erreur venant de PHP ?
Salut two3d,

nope, ça recharge directement vers l'accueil, j'e capte pas. je pense que ça doit dû à du Js mais comme j'y connais pas grand chose (me débrouille en html et css, mais les langages server, j'm'y suis jms mis)

Re: Formulaire contact, sur site auto-hébergé

Posté : 24 mars 2021, 14:36
par RealJesus
si vous voulez faire un test insitu : http://fassihb.synology.me

Re: Formulaire contact, sur site auto-hébergé

Posté : 24 mars 2021, 16:31
par two3d
essaye en enlevant <script src="https://cdnjs.cloudflare.com/ajax/libs/ ... "></script>

Et "enctype form data" n'est pas utile pour ton <form> si tu n'envoie pas de fichier.

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 11:26
par RealJesus
J'ai fait, mais du coup plus rien ne fonctionne : j'ai juste mon nom sur la page et plus accès au menu, et tout le reste... et je ne reçois pas le mail non plus

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 11:43
par two3d
Ta aucun name sur tes input, tu ne peux pas les retrouver avec $_POST lors du traitement PHP

sauf textarea qui a un name="message"

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 12:06
par RealJesus
Ta aucun name sur tes input, tu ne peux pas les retrouver avec $_POST lors du traitement PHP

sauf textarea qui a un name="message"
Effectivement, merci ^^ ça envoie bien le mail et je le reçois....

du coup, j'ai deux autres questions :

1 /comment éviter que Le mail que je reçois, arrive forcément dans les spams, avec marqué :


Traitez ce message avec prudence
Gmail n'a pas pu vérifier que ce message provient bien de [email protected]. Évitez de cliquer sur des liens ou de télécharger des pièces jointes que ce message pourrait contenir, ou de communiquer des informations personnelles en y répondant.

Signaler comme hameçonnage

2/ comment faire pour que l'envoie se fasse depuis le boutton de mon formulaire, et non depuis les boutons "prévisualiser" et "envoyer" du script php ?
rien ne se passe quand je clique sur le bouton de mon formulaire
Merci bcp pour ton aide, en tout cas :)

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 14:33
par two3d
1 /comment éviter que Le mail que je reçois, arrive forcément dans les spams, avec marqué :
Utiliser un mail() en utf8 et faire en sorte que le sujet du message soit aussi correct.
2/ comment faire pour que l'envoie se fasse depuis le boutton de mon formulaire, et non depuis les boutons "prévisualiser" et "envoyer" du script php ?
Tu assignes des boutons à $Previsualiser et $Envoi, les boutons en questions, que tu réaffiche en bas du form avec $bas_formulaire, supprime carrément <?php echo $bas_formulaire;?> (vers la ligne 664) et suppriome aussi enctype="multipart/form-data" (dans la balise <form ... enctype="multipart/form-data">) qui ne te servira pas pour ton utilisation.

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 15:43
par RealJesus
Utiliser un mail() en utf8 et faire en sorte que le sujet du message soit aussi correct.
c'est fait, mais même en tapant "demande de devis" plutôt que "test" en sujet, c'est pareil... j'ai créé un filtre sur ma boite mail (puisque j'ai ajouté en dur dans le code "envoyé depuis mon site web" pour éviter que ça aille dans les spams.

Par contre, tu aurais une piste (pour un débutant) pour sécuriser un peu le formulaire et éviter de me faire spamm pour rien ?
Tu assignes des boutons à $Previsualiser et $Envoi, les boutons en questions, que tu réaffiche en bas du form avec $bas_formulaire, supprime carrément <?php echo $bas_formulaire;?> (vers la ligne 664) et suppriome aussi enctype="multipart/form-data" (dans la balise <form ... enctype="multipart/form-data">) qui ne te servira pas pour ton utilisation.
c'est fait aussi, mais j'ai corrigé comme suit :
<?php  
                 if (isset($_POST['message']))  
                  {  
                    // La variable $verif va nous permettre d'analyser si la sémantique de l'email est bonne  
                    $verif='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#';  
                    //quelques remplacements pour les specialchars  
                    $message=preg_replace('#(<|>)#', '-', $_POST['message']);  
                    $message=str_replace('"', "'",$message);  
                    $message=str_replace('&', 'et',$message);  
                    $objet=preg_replace('#(<|>)#', '-', $_POST['objet']);  
                    $objet=str_replace('"', "'",$objet);  
                    $objet=str_replace('&', 'et',$objet);  
                    // On assigne et/ou protège nos variables  
                    $votremail=stripslashes(htmlentities($_POST['votremail']));  
                    $message=stripslashes(htmlspecialchars($message));  
                    $objet=stripslashes(htmlspecialchars($objet));  
                    //input envoi/previsualiser  
                    $envoi=htmlentities($_POST['envoi']);  
                    $previsualiser=htmlentities($_POST['previsualiser']);  
                    //on enlève les espaces  
                    $votremail=trim($votremail);  
                    $message=trim($message);  
                    $objet=trim($objet);  

                    $apercu_resultat='<p>Aperçu du résultat :</p>';  

                    /*On vérifie si l'e mail et le message sont pleins, et on agit en fonction.  
                      (on affiche Apercu du resultat, tel ou tel champ est vide, etc...*/  
                    //Si ca ne vas pas (mal rempli, mail non valide...)  
                    if((empty($message))or(empty($objet))or(!preg_match($verif,$votremail)))  
                      {  
                        //les 3 champs sont vides  
                        if(empty($votremail)and(empty($message))and(empty($objet)))  
                          {  
                            echo '<p>Tous les champs sont vides.</p>';  
                            $message='';$votremail='';$objet='';$apercu_resultat='';  
                          }  
                        //un des champs est vide  
                        else  
                          {  
                            if(!preg_match($verif,$votremail))  
                              echo'<p>Votre adresse e-mail n\'est pas valide.</p>';  
                            else  
                            {  
                              echo'<p>Il faut remplir tous les champs !</p>';  
                              if(empty($message))  
                                $apercu_resultat='';  
                            }  
                          }  
                      }  
                    //Si les deux sont pleins et que l'adresse est valide, on envoie ou on prévisualise sans envoi  
                    else  
                      {  
                        $domaine=preg_replace('#[^@]+@(.+)#','$1',$votremail);  
                        $DomaineMailExiste=checkdnsrr($domaine,'MX');  
                        if(!$DomaineMailExiste)  
                          echo'<p>Le nom de domaine de l\'adresse e-mail que vous avez donné n\'existe pas.</p>';  
                        elseif(!empty($previsualiser))  
                            {  
                              $apercu_resultat='<p>Votre message et votre adresse e-mail sont valides et prêts à être envoyés.  
                              <br>Vous n\'avez plus qu\'à cliquer sur le bouton "Envoyer".<br>Prévisualisation :</p>';  
                              $Previsualiser='';  
                            }  
                        elseif(!empty($envoi))  
                            {  
                              $objet='[envoyé depuis mon site web] : '.$objet;  
                              $headers='From:'.$votremail."\r\n".'To:'.$mail."\r\n".'Subject:'.$objet."\r\n".'Content-type: text/html; charset=UTF-8'."\r\n".'Sent:'.date('l, F d, Y H:i');  
                              if(mail($destinataire,$objet,$message,$headers))  
                              {  
                                echo '<p>Votre message a bien été envoyé. Merci.</p><p><a href="/">Retour à la page d\'accueil</a></p>';  
                                $Envoi='';  
                                $Previsualiser='';  
                              }  
                              else  
                                echo'<p>Un problème est survenu durant l\'envoi du mail.</p>';  
                            }  
                        else  
                          echo'<p>Une condition innatendue est survenue lors de l\'exécution du script.</p>';  
                      }  
                echo $apercu_resultat;  
                  }  
                else  
                  {  
                  echo '<p>Vous pouvez utiliser ce formulaire pour me contacter.</p>';  
                  $votremail='';$message='';  
                  }  
                ?>
                 <form id="myForm" method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
                    <div class="input-line">
                        <input  id="name" type="text" placeholder="Name" class="input-name" name="Name" value="<?php echo( $from ); ?>" name="from" required>
                        <input id="email" type="email" placeholder="Email"  class="input-name" value="<?php echo $votremail; ?>" name="votremail" required>
                    </div>
                    <input type="text" id="subject" placeholder="subject" class="input-subject" value="<?php echo( $object ); ?>" name="objet" required>
                    <textarea id ="body" class="input-textarea" placeholder="message" name="message" required><?php echo $message; ?></textarea>
                    <button name="envoi" type="submit" id ="submit" tabindex="4" value="Envoyer">Envoyer</button>
                    <button type="submit" name="previsualiser" tabindex="3" value="Prévisualiser">Prévisualiser</button>
                 </form>
donc du coup, le bouton envoyer fonctionne, mais pas le bouton prévisualiser.... any hint ?

Encore une fois, merci, you rock ! :)

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 16:01
par two3d
Tu rajoute une condition:
if(isset(post previsualiser)) 
//alors tu affiche la prévisualisation
else 
// tu envoi le message
Penses à réafficher les champs du formulaire quand tu fait une prévisualisation car il seront vidés automatiquement

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 16:55
par RealJesus
Tu rajoute une condition:
if(isset(post previsualiser)) 
//alors tu affiche la prévisualisation
else 
// tu envoi le message
Penses à réafficher les champs du formulaire quand tu fait une prévisualisation car il seront vidés automatiquement
alors j'avoue, j'm'y perds dans tout ce code, mais il me semble que c'est déjà le cas, non avec : elseif(!empty($previsualiser)) ?
  //Si les deux sont pleins et que l'adresse est valide, on envoie on on prévisualise sans envoi  
    else  
      {  
        $domaine=preg_replace('#[^@]+@(.+)#','$1',$votremail);  
        $DomaineMailExiste=checkdnsrr($domaine,'MX');  
        if(!$DomaineMailExiste)  
          echo'<p>Le nom de domaine de l\'adresse e-mail que vous avez donné n\'existe pas.</p>';  
        elseif(!empty($previsualiser))  
            {  
              $apercu_resultat='<p>Votre message et votre adresse e-mail sont valides et prêts à être envoyés.  
              <br>Vous n\'avez plus qu\'à cliquer sur le bouton "Envoyer".<br>Prévisualisation :</p>';  
              $Previsualiser='';  
            }  
        elseif(!empty($envoi))  
            {  
              $objet='[envoyé depuis mon site web] : '.$objet;  
              $headers='From:'.$votremail."\r\n".'To:'.$mail."\r\n".'Subject:'.$objet."\r\n".'Content-type:text/plain;charset=iso-8859-1'."\r\n".'Sent:'.date('l, F d, Y H:i');  
              if(mail($destinataire,$objet,$message,$headers))  
              {  
                echo '<p>Votre message a bien été envoyé. Merci.</p><p><a href="/">Retour à la page d\'accueil</a></p>';  
                $Envoi='';  
                $Previsualiser='';  
              }  
              else  
                echo'<p>Un problème est survenu durant l\'envoi du mail.</p>';  
            }  
        else  
          echo'<p>Une condition innatendue est survenue lors de l\'exécution du script.</p>';  
      }  
echo $apercu_resultat;  
  }  

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 17:35
par RealJesus
1 /comment éviter que Le mail que je reçois, arrive forcément dans les spams, avec marqué :


Traitez ce message avec prudence
Gmail n'a pas pu vérifier que ce message provient bien de [email protected]. Évitez de cliquer sur des liens ou de télécharger des pièces jointes que ce message pourrait contenir, ou de communiquer des informations personnelles en y répondant.

Signaler comme hameçonnage
J'ai fait un test tout bête : envoyer un mail depuis le formulaire avec un @mail du même domaine que mon smtp @free.fr, et là c'est pas marqué comme spam par gmail

je pense que le pb vient de là : un smtp @free.fr qui envoie un message à la place d'un smtp @gmail.com, et forcément, ça aime pas.

une idée ?

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 18:12
par two3d
J'ai déjà donné l'idée, changer de code, il est vraiment pas top (c'est d'un foutage de gueule royale ce bout de code) avec des variables qui ne servent à rien, ça fait que rallonger le code et on y comprend rien. Ya aussi des vérifications qui sont pas géniales comme
$previsualiser= htmlentities($_POST['previsualiser']);
Si $_POST['previsualiser'] n'existe pas, yaura une erreur

et d'autre qui ne servent à rien comme if(!$DomaineMailExiste)


Et aussi:
$message=str_replace('&', 'et',$message); 
//qui ne sert à rien car passage au htmlentities() de $message
 
Autre chose, si la personne rentre des caractères pour le Subject:'.$objet." (ou le code qui convertit caractères) qui ne sont pas compatible avec la rfc2047 tu laura dans l'os et le mail pourra: soit ne pas te parvenir, soit atterrir en spam, le mieux est de mettre le sujet prédéfinit: par exemple: "Vous avez reçu un nouveau mail"
'Sent:'.date('l, F d, Y H:i');//sert à rien
echo '<p>Tous les champs sont vides.</p>';  
 $message='';$votremail='';$objet='';$apercu_resultat='';

//si ils sont vides ça sert à rien de les redéfinir en vide...
echo $_SERVER['PHP_SELF']; //peut être une faille de sécurité, mettre directement le fichier utilisé, par exemple "contact.php"
https://www.j0k3r.net/un-exemple-basiqu ... sur-server

Bref! ce code est à refaire ou à remplacer par un autre et c'est pas ce qui manque sur internet. :wink:

Re: Formulaire contact, sur site auto-hébergé

Posté : 25 mars 2021, 18:42
par RealJesus
J'ai déjà donné l'idée, changer de code, il est vraiment pas top (c'est d'un foutage de gueule royale ce bout de code) avec des variables qui ne servent à rien, ça fait que rallonger le code et on y comprend rien. Ya aussi des vérifications qui sont pas géniales comme
$previsualiser= htmlentities($_POST['previsualiser']);
Si $_POST['previsualiser'] n'existe pas, yaura une erreur

et d'autre qui ne servent à rien comme if(!$DomaineMailExiste)


Et aussi:
$message=str_replace('&', 'et',$message); 
//qui ne sert à rien car passage au htmlentities() de $message
 
Autre chose, si la personne rentre des caractères pour le Subject:'.$objet." (ou le code qui convertit caractères) qui ne sont pas compatible avec la rfc2047 tu laura dans l'os et le mail pourra: soit ne pas te parvenir, soit atterrir en spam, le mieux est de mettre le sujet prédéfinit: par exemple: "Vous avez reçu un nouveau mail"
'Sent:'.date('l, F d, Y H:i');//sert à rien
echo '<p>Tous les champs sont vides.</p>';  
 $message='';$votremail='';$objet='';$apercu_resultat='';

//si ils sont vides ça sert à rien de les redéfinir en vide...
echo $_SERVER['PHP_SELF']; //peut être une faille de sécurité, mettre directement le fichier utilisé, par exemple "contact.php"
https://www.j0k3r.net/un-exemple-basiqu ... sur-server

Bref! ce code est à refaire ou à remplacer par un autre et c'est pas ce qui manque sur internet. :wink:
Pfiouuuu ok, je supprime de ce pas ce bout de code trouvé sur le net !
grâce à toi, j'ai un peu mieux compris la structure et l'échange entre phpmail et le formulaire (c'est mes tous premiers pas en php)

du coup, ouais, j'vais supprimer l'objet et le prédéfinir.

merci bcp pour ton aide :)

je garde le post ouvert si jamais, mais franchement : reconnaissance éternelle ! :D