Probléme formulaire de contact

Par audreyG, il y a 9 ans


Bonjour,

Voila je rencontre un problème avec mon formulaire de contact. Je réalise que je ne reçois plus les mails pour les demandes d'informations ! ça fonctionnait bien jusqu'il y a quelques semaines, je n'ai rien touché et je n'arrive pas à comprendre d'où ça peut venir !! Pourriez vous m'aider ou m'orienter sur le problème svp ! Je précise que je suis novice...
Mille merci par avance pour votre aide précieuse !

<?php $nom=utf8_decode($_POST['nom']); $email=utf8_decode($_POST['email']); $telephone=utf8_decode($_POST['telephone']); $adresse=utf8_decode($_POST['adresse']); $arrival=utf8_decode($_POST['arrival']); $depart=utf8_decode($_POST['depart']); $adulte=utf8_decode($_POST['adulte']); $enfant=utf8_decode($_POST['enfant']); $sejour=utf8_decode($_POST['sejour']); $maison=utf8_decode($_POST['maison']); $services=utf8_decode($_POST['services']); $message=utf8_decode($_POST['message']); for ($i=0;$i<sizeof($services);$i++) { if (isset($services[$i])) { echo("$services[$i] - "); } } /* Destinataire */ $to = 'contact@agrafica.fr'; /* Construction email */ $msg = 'Bonjour,'."\r\n\r\n"; $msg.= 'Cette demande a ete envoyee depuis www.lesmaisonsdumaquis.com par '.$nom."\r\n"; $msg.= 'Telephone '.$telephone."\r\n"; $msg.= 'Email '.$email."\r\n\r\n"; $msg.= 'Adresse '.$adresse."\r\n\r\n"; $msg.= '*********************'."\r\n"; $msg .= 'VOICI SA DEMANDE :'."\r\n\r\n"; $msg .= 'Les dates souhaitees :'."\r\n\r\n"; $msg.= 'arrivee : '.$arrival."\r\n"; $msg.= 'depart : '.$depart."\r\n\r\n"; $msg.= '*********************'."\r\n"; $msg .= 'Nombre de personnes :'."\r\n\r\n"; $msg.= 'adultes : '.$adulte."\r\n"; $msg.= 'enfants : '.$enfant."\r\n\r\n"; $msg.= '*********************'."\r\n"; $msg .= 'cette personne souhaite etre contactee pour l organisation d un sejour :'."\r\n\r\n"; $msg.= 'contact pour l organisation d un sejour : '.$sejour."\r\n\r\n"; $msg.= '*********************'."\r\n"; $msg .= 'cette personne serait interessee par la maison :'."\r\n\r\n"; $msg.= 'Maison souhaitee : '.$maison."\r\n\r\n"; $msg.= '*********************'."\r\n"; $msg .= 'cette personne serait interessee par les services suivants :'."\r\n\r\n"; foreach($_POST['services'] as $pres ){ $msg.= $pres."\r\n\r\n";} $msg.= '*********************'."\r\n"; $msg .= 'Voici son message :'."\r\n\r\n"; $msg.= $message."\r\n"; $msg.= '*********************'."\r\n"; /* Entete mail */ $headers = 'From: '.$nom.'<'.$email.'>'."\r\n"; $headers .= 'Reply-To: <'.$email.'>'."\r\n"; /* envoi mail */ mail($to, $email, $sujet, $msg, $headers); ?> <!doctype html> <html> <head> <meta charset="UTF-8"> <title>Les Maisons du Maquis : maisons de vacances avec services dédiés</title> <meta name="description" content="Les Maisons du Maquis vous propose des locations de maisons de vacances avec services dédiés à Bonifacio ou ailleurs." <!--[if lt IE 9]> <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <!-- Appel de la police google font en graisse 300 et 700--> <link href='http://fonts.googleapis.com/css?family=Handlee|Raleway:300,400,500,600,700' rel='stylesheet' type='text/css'> <!-- Appels css --> <link rel="stylesheet" type="text/css" href="style/style.css" /> <link rel="stylesheet" type="text/css" href="style/responsive.css" /> <link rel="stylesheet" type="text/css" href="style/bg-fullscreen.css" /> <meta name="viewport" content="initial-scale=1.0" /> <!-- Appels Javascript --> <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script> <script type="text/javascript" src="js/bg-fullscreen.js"></script> </head> <body> <!-- Images d'arrière plan --> <ul class="cb-slideshow"> <li><span>Image 01</span></li> <li><span>Image 02</span></li> <li><span>Image 03</span></li> <li><span>Image 04</span></li> <li><span>Image 05</span></li> <li><span>Image 06</span></li> </ul> <!-- Fin images arrière plan --> <div id="conteneur"> <div id="main" <p> Votre message a bien été envoyé. <br />Une copie vous a été envoyée sur votre adresse mail<br /> <a href="/">OK</a> </p> </div> </div> </body> </html>

9 réponses

shinix, il y a 9 ans

Salut,

1.ton foreach n'est pas fermé

2.fait un test pour voir si ton mail s'envoi remplace la ligne mail($to, $email, $sujet, $msg, $headers); par :

<?php $message = null; if(mail($to, $email, $sujet, $msg, $headers)){ $message = " Votre message a bien été envoyé. <br />Une copie vous a été envoyée sur votre adresse mail<br />"; } else { $message= "il y a eu un problème"; }

et à la place du message "Votre message a bien été envoyé. <br />Une copie vous a été envoyée sur votre adresse mail"
tu ajoute <?= $message ?>

audreyG, il y a 9 ans

Merci beaucoup Shinix pour ta réactivité. Je viens de suivre tes instructions et j'ai fait un essai. J'ai le message "il y a eu un problème" et ne reçois toujours pas de mail... :-(

shinix, il y a 9 ans

Active déjà les erreurs et ensuite refait un test d'envoi de mail :

A mettre au tout début de ton fichier php

<?php ini_set('display_errors', 1); error_reporting(E_ALL);

Ensuite tu peux également vérifier si chaque paramètre passé dans la fonction mail() est bien rempli et donc pas vide.

Huggy, il y a 9 ans

Affiche aussi le message d'erreur
print_r(error_get_last())

audreyG, il y a 9 ans

Merci pour votre aide !!

J'ai les messages suivants qui s'affichent :
Undefined variable .... on line 75
Warning mail() ..... on line 75

Cette ligne équivault à :
if(mail($to, $email, $sujet, $msg, $headers)){

Carouge10, il y a 9 ans

La variable $sujet n'est pas défini.

audreyG, il y a 9 ans

Mille merci à vous 3 pour votre aide ! Mille merci à Carouge10 ! c'était tout simplement ça le problème ! tout fonctionne !! Merciiiii

audreyG, il y a 9 ans

Par contre le demandeur ne reçoit pas de copie du message... :-( si je peux abuser... Merci !

Carouge10, il y a 9 ans

oui car il faut soit faire un deuxième "mail(....);" ou ajouter le mail du demandeur à la variable $to