Signaler

Probleme CGI MAILER erreur [Résolu]

Posez votre question Sylvain69903 - Dernière réponse le 12 nov. 2017 à 10:20 par Sylvain69903
Bonjour tous le monde !

Je me permet de me tourner vers vous pour m'aidez à résoudre un problème svp !

Après plusieurs essaie j'ai réussis à faire fonctionner mon système de contact sur le site de ma compagne, malheureusement à la réception de celui-ci je reçois le nom de CGI-MAILER à la place du nom de la personne qui me contact !

J'ai effectuer plusieurs recherches sur internet avant de poster pour essayer de régler mon problème mais plusieurs personne ont le même problème et tous les codes sont différents pour chaque réponse.

Je vous joins ci-après le codage que j'ai effectuer si vous pouviez me dire ou se trouve l'erreur car je n'arrive pas à comprendre !

Merci d'avance à vous :

<?php
    
    if ($_SERVER['REQUEST_METHOD']=='POST') {
  
     
      $nombreErreur = 0; 
      // Définit toutes les erreurs possibles
      if (!isset($_POST['email'])) { 
        $nombreErreur++; 
        $erreur1 = '<p>We have a problem with your Email !.</p>';
      } else {
        if (empty($_POST['email'])) {
          $nombreErreur++; 
          $erreur2 = '<p>You have forget your Email !.</p>';
        } else {
          if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
            $nombreErreur++; 
            $erreur3 = '<p>Are you sure of your Email ?</p>';
          }
        }
      }
     
      if (!isset($_POST['message'])) {
        $nombreErreur++;
        $erreur4 = '<p>We have a problem with the message.</p>';
      } else {
        if (empty($_POST['message'])) {
          $nombreErreur++;
          $erreur5 = '<p>You have forget to put your message.</p>';
        }
      }  

 if (!isset($_POST['sujet'])) {
        $nombreErreur++;
        $erreur6 = '<p>We have a problem with your subjet.</p>';
      } else {
        if (empty($_POST['sujet'])) {
          $nombreErreur++;
          $erreur7 = '<p>You have forget to put your subjet.</p>';
        }
      }    
     
      if ($nombreErreur==0) { // S'il n'y a pas d'erreur
   
   
   // S'il y des données de postées
if ($_SERVER['REQUEST_METHOD']=='POST') {
 

 

  $nom     = htmlentities($_POST['nom']); // htmlentities() convertit des caractères "spéciaux" en équivalent HTML
  $email   = htmlentities($_POST['email']);
    $sujet   = htmlentities($_POST['sujet']);

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


  $destinataire = '***@***'; // 
  $sujet = 'KIMBERLY-ART.COM NEW MESSAGE'; // Titre de l'email
  $contenu = '<html><head><title>NEW MESSAGE </title></head><body>';
  $contenu .= '<p>Hi you have a new message from your website</p>';
  $contenu .= '<p><strong>Name</strong>: '.$nom.'</p>';
  $contenu .= '<p><strong>Email</strong>: '.$email.'</p>';
   $contenu .= '<p><strong>Subjet : </strong>: '.$sujet.'</p>';
     $contenu .= '<p><strong>Message</strong>: '.$message.'</p>';

  $contenu .= '</body></html>'; 
 
  
  $headers = 'MIME-Version: 1.0'."\r\n";
   $headers = "From: ".$email." <".$email.">\r\n";
 $headers = 'Content-type: text/html; charset=iso-8859-1'."\r\n";
 
  // Envoyer l'email
  mail($destinataire, $sujet, $contenu, $headers); 
  echo '<h2><p align="center">Congratulations, we have received your message !</p> <p align="center"> Thanks for have contact me, you will have a answer soon !</p> <p align="center"><br>
For coming back on kimberly art Studio please follow the way <a href="http://www.kimberly-art.com" rel="nofollow noopener noreferrer" target="_blank">here 
</a></p>
<p align="center">Kimberly Segura - Artist Painter - www.kimberly-art.com</p>
</h2>'; 
}




      } else { // S'il y a un moins une erreur
        echo '<div style="border:1px solid #ff0000; padding:5px;">';
        echo '<p style="color:#ff0000;">Sorry we have detected   '.$nombreErreur.' error (s).Please check :</p>';
        if (isset($erreur1)) echo '<p>'.$erreur1.'</p>';
        if (isset($erreur2)) echo '<p>'.$erreur2.'</p>';
        if (isset($erreur3)) echo '<p>'.$erreur3.'</p>';
        if (isset($erreur4)) echo '<p>'.$erreur4.'</p>';
        if (isset($erreur5)) echo '<p>'.$erreur5.'</p>';
          if (isset($erreur6)) echo '<p>'.$erreur6.'</p>';
        if (isset($erreur7)) echo '<p>'.$erreur7.'</p>';
        echo '<p align="center"><br>
For sending back your email please put a correction of your error in the  <a href="http://www.kimberly-art.com/#contact" rel="nofollow noopener noreferrer" target="_blank">contact section
</a></p>';


        echo '</div>';
      }
    }
    ?>



Je vous remercie d'avance pour votre aide !

Cordialement, LECUYER Sylvain.

EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).

Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
Jordane45
Utile
+0
plus moins
Bonjour,

Pour commencer... tu écrases la valeur de ta variable au fur et à mesure...

 $headers = 'MIME-Version: 1.0'."\r\n";
 $headers = "From: ".$email." <".$email.">\r\n";
 $headers = 'Content-type: text/html; charset=iso-8859-1'."\r\n";

Tu as oublié de concaténer (pour ça on utiliser un . (point)
$headers  = 'MIME-Version: 1.0'."\r\n";
$headers .= "From: ".$email." <".$email.">\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1'."\r\n";

jordane45 18789Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 12 novembre 2017 Dernière intervention - 12 nov. 2017 à 00:58
Et au passage.. je t'invite à lire ceci :
http://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code#recuperer-proprement-les-variables-avant-de-les-utiliser

.
Répondre
Sylvain69903- 12 nov. 2017 à 10:20
Merci beaucoup pour votre aide et pour l'article que vous m'avez recommander de lire.

Après modification en effet le probléme est résolu !

Merci encore Jordane45, bonne journée à vous.

Cordialement, LECUYER Sylvain.
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !