Mon fichier traitement.php ne fonctionne pas

Mon fichier traitement.php ne fonctionne pas - PHP - Programmation

Marsh Posté le 23-04-2014 à 15:05:10    

Bonjour à tous,
 
J'aurais besoin d'un petit peu d'aide. J'ai crée un fichier traitement.php pour récupérer les données de mon formulaire mais je ne reçois aucun message (Formulaire envoyé....) lorsque je clique sur le bouton envoyer.
 
Les champs : prénom, nom, email, projet et objectif sont obligatoires, le reste non.
 
J'utilise WAMP + sendmail qui fonctionne impec avec un autre formulaire.
 
 

Code :
  1. <?php
  2.  header('Content-type: text/html; charset=utf-8');
  3.   if(isset($_POST) && isset($_POST['form2_prenom']) && isset($_POST['form2_nom']) && isset($_POST['form2_email']) && isset($_POST['form2_telephone']) && isset($_POST['form2_societe']) && isset($_POST['form2_url']) && isset($_POST['form2_secteur']) && isset($_POST['form2_projet']) && isset($_POST['form2_nature']) && isset($_POST['form2_objectif']) && isset($_POST['form2_cible']) && isset($_POST['form2_delai']) && isset($_POST['form2_budget']) && isset($_POST['form2_cahier']) && isset($_POST['form2_identite']) && isset($_POST['form2_souhaits']) && isset($_POST['form2_exemples']) && isset($_POST['form2_dev']) && isset($_POST['form2_services']) && isset($_POST['choix_contact']) && isset($_POST['choix_moment'])) {
  4.    extract($_POST);
  5.    if(!empty($form2_prenom) && !empty($form2_nom) && !empty($form2_email) && !empty($form2_projet) && !empty($form2_objectif)) {
  6.     $to = 'xxxxxx@gmail.com'; // (mon adresse réelle)
  7.     $subject = 'Contact depuis le site';
  8.     $headers = 'MIME-Version: 1.0' . "\r\n";
  9.     $headers .= 'Content-Type: text/html; charset=utf-8' . "\r\n";
  10.     $headers .= 'From:' .$form2_prenom. " " .$form2_email. "\r\n";
  11.     $headers .= 'Reply-To:'.$form2_email. "\r\n";
  12.     $message = 'Prénom : '.$form2_prenom.' \n';
  13.     $message .= 'Nom : '.$form2_nom .' \n';
  14.     $message .= 'Email : '.$form2_email .' \n';
  15.     $message .= 'Tel : '.$form2_telephone .' \n';
  16.     $message .= 'Societe : '.$form2_societe .' \n';
  17.     $message .= 'URL : '.$form2_url .' \n';
  18.     $message .= 'Secteur : '.$form2_secteur .' \n';
  19.     $message .= 'Projet : '.$form2_projet .' \n';
  20.     $message .= 'Nature : '.$form2_nature .' \n';
  21.     $message .= 'Objectif : '.$form2_objectif .' \n';
  22.     $message .= 'Cible : '.$form2_cible .' \n';
  23.     $message .= 'Délai : '.$form2_delai .' \n';
  24.     $message .= 'Budget : '.$form2_budget .' \n';
  25.     $message .= 'Cahier : '.$form2_cahier .' \n';
  26.     $message .= 'Identité : '.$form2_identite .' \n';
  27.     $message .= 'Souhaits : '.$form2_souhaits .' \n';
  28.     $message .= 'Exemples : '.$form2_exemples .' \n';
  29.     $message .= 'Développement : '.$form2_dev .' \n';
  30.     $message .= 'Services : '.$form2_services .' \n';
  31.     $message .= 'A contacter : '.$choix_contact .' \n';
  32.     $message .= 'Le : '.$choix_moment .' \n';
  33.     if(mail($to, $subject, $message, $headers)){
  34.      echo "Le formulaire a bien été envoyé";
  35.     } else {
  36.      echo "Le formulaire n'a pas été envoyé";
  37.     }
  38.    } else {
  39.     echo "Vous n'avez pas rempli tous les champs";
  40.    }
  41.   }
  42.  ?>


Message édité par xroad le 23-04-2014 à 15:38:16
Reply

Marsh Posté le 23-04-2014 à 15:05:10   

Reply

Marsh Posté le 23-04-2014 à 15:36:48    

Que renvoie la fonction mail() ? true ou false ? Si c'est false, t'as un pb de conf du programme SMTP. Si c'est true, il est possible que ça soit le serveur smtp qui bloque l'envoi du mail parce que le From ne contient pas une adresse associée au nom de domaine ou de l'hébergeur...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 23-04-2014 à 15:39:52    

Merci pour ta réponse.
 
J'utilise WAMP + sendmail. Qui est bien configuré car il fonctionne avec le script ci-dessous. Le true ou false s'affiche ou ? Dans la console ?
 

Code :
  1. <?php
  2.  header('Content-type: text/html; charset=utf-8');
  3.   if(isset($_POST) && isset($_POST['form3_prenom']) && isset($_POST['form3_nom']) && isset($_POST['form3_email']) && isset($_POST['form3_telephone']) && isset($_POST['form3_message'])) {
  4.    extract($_POST);
  5.    if(!empty($form3_prenom) && !empty($form3_nom) && !empty($form3_email) && !empty($form3_message)) {
  6.     $to = 'xxxxx@gmail.com';
  7.     $subject = 'Contact depuis le site';
  8.     $headers = 'MIME-Version: 1.0' . "\r\n";
  9.     $headers .= 'Content-Type: text/html; charset=utf-8' . "\r\n";
  10.     $headers .= 'From:' .$form3_prenom. " " .$form3_email. "\r\n";
  11.     $headers .= 'Reply-To:'.$form3_email. "\r\n";
  12.     $message = '<html><body style="padding: 50px;background-color: #D2D4D5;font-family: Arial;font-size: 24px;color: #15ABD3;text-align: center;">';
  13.     $message .= '<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>Message depuis le site</title></head>';
  14.     $message .= '<table width="500" border="0" align="center" cellpadding="0" cellspacing="0" style="padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;">';
  15.     $message .= '<tr><td colspan="2" style="font-family: Arial;font-size: 24px;color: #15ABD3;text-align: center;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;"><p><img src="logo-solo.png" width="114" height="114" alt="Logo"></p><p style="color: #64696a;font-weight: bold;font-size: 52px;">MESSAGE</p></td></tr>';
  16.     $message .= '<tr><td width="170" style="font-family: Arial;font-size: 24px;color: #15ABD3;text-align: right;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;font-weight: bold;">Prénom :</td><td width="330" style="font-family: Arial;font-size: 24px;color: #64696a;text-align: left;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;">'. $form3_prenom .'</td></tr>';
  17.     $message .= '<tr><td style="font-family: Arial;font-size: 24px;color: #15ABD3;text-align: right;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;font-weight: bold;">Nom :</td><td style="font-family: Arial;font-size: 24px;color: #64696a;text-align: left;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;">'. $form3_nom .'</td></tr>';
  18.     $message .= '<tr><td style="font-family: Arial;font-size: 24px;color: #15ABD3;text-align: right;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;font-weight: bold;">Email :</td><td style="font-family: Arial;font-size: 24px;color: #64696a;text-align: left;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;">'. $form3_email .'</td></tr>';
  19.     $message .= '<tr><td style="font-family: Arial;font-size: 24px;color: #15ABD3;text-align: right;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;font-weight: bold;"> Téléphone :</td><td style="font-family: Arial;font-size: 24px;color: #64696a;text-align: left;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;">'. $form3_telephone .'</td></tr>';
  20.     $message .= '<tr><td style="font-family: Arial;font-size: 24px;color: #15ABD3;text-align: right;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;font-weight: bold;vertical-align: top;">Message :</td><td style="font-family: Arial;font-size: 24px;color: #64696a;text-align: left;padding: 15px;border-collapse: collapse;border: 1px solid #9fa5a7;">'. stripslashes(nl2br($form3_message)) .'</td></tr>';
  21.     $message .= '</table>';
  22.     $message .= '</body></html>';
  23.     if(mail($to, $subject, $message, $headers)){
  24.      echo "Le formulaire a bien été envoyé";
  25.     } else {
  26.      echo "Le formulaire n'a pas été envoyé";
  27.     }
  28.    } else {
  29.     echo "Vous n'avez pas rempli tous les champs";
  30.    }
  31.   }
  32.  ?>


Message édité par xroad le 23-04-2014 à 15:45:26
Reply

Marsh Posté le 23-04-2014 à 16:23:55    

ben tu fais dasn ton script un $bResult = mail(....);
puis un var_dump($bResult);


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 24-04-2014 à 09:49:45    

gmail bloque de plus en plus les mails envoyés par ce moyen aussi. On a eu des problèmes à cause de ça au boulot.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed