8722 sujets

Développement web côté serveur, CMS

Bonjour,

J'ai juste un petit soucis avec mon formulaire de contact et ne maîtrisant pas le PHP, j'ai besoin d'aide.
Mon problème c'est que je ne reçois pas le message alors que ça met comme quoi "votre message à bien été envoyé".

Voici mon formulaire:


<form action="envoi.php#fbsection4" method="post" name="formContact">
           					<input type="text" id="nom" name="nom" placeholder="Nom" /><br/> 
							<input type="text" id="prenom" name="prenom" placeholder="Prénom" /><br/>
							<input type="text" id="email" name="email" placeholder="Email"><br />
							<input type="text" id="sujet" name="sujet" placeholder="Sujet" /><br/> 
							<textarea id="message" name="message" placeholder="Message"></textarea><br/><br/>
								Veuillez recopier ce code :
                                <div>
                                <img style="margin:10px; vertical-align:middle; "src="captcha.php"><input type="text" name="captcha" style="width:70px; margin:20px;"/>
                                </div>
							<input type="submit" value="Envoyer">
                        	</form>




Et la page php:


<?php

session_start();

$nom=utf8_decode($_POST['nom']);
$prenom=utf8_decode($_POST['prenom']);
$email=utf8_decode($_POST['email']);
$sujet=utf8_decode($_POST['sujet']);
$message=utf8_decode($_POST['message']);

$to='web@burgener-prod.ch';

$msg='Bonjour,'."\r\n\r\n";
$msg.='Ce mail a été envoyé depuis votre site internet par '.$prenom.' '.$nom."\r\n\r\n";
$msg.='Voici son message :'."\r\n\r\n";
$msg.='Sujet : '.$sujet."\r\n";

$msg.='********************'."\r\n";
$msg.= $message."\r\n";
$msg.='********************'."\r\n";


$headers='From: '.$nom.'<'.$email.'>'."\r\n";
$headers.='Reply-To: <'.$email.'>'."\r\n";

?>

 <?php
if($_POST['captcha']){
if($_POST['captcha']==$_SESSION['captcha']) echo 'Votre message à bien été envoyé.';
if($_POST['captcha']==$_SESSION['captcha']) mail($to, $sujet, $msg, $headers);
else echo 'Le captcha entré est invalide <a href="index.php">Revenir au formulaire</a>';
}
?>


Qu'est qui me manque? J'ai bien contrôlé mon adresse mail et elle est juste.

Merci pour votre réponse. Smiley biggrin
Je ne saurais pas te dire pourquoi le mail ne part pas (vérifie tes spams ?) mais en terme de logique c'est mauvais, car tu affiches le message de confirmation sous la condition que le captcha soit correctement rempli.

Tu ne testes pas que le mail soit bien parti, ni même que les valeurs sont valides avant d’exécuter la fonction mail. En gros, on peut mettre n'importe quoi, du moment que le captcha soit correct tu vas afficher que le message est parti, et essayer de l'envoyer.

Or le contenu peut ne pas être correct et empêcher l'envoi du mail, mais tu diras quand même à l'internaute que le message a bien été envoyé. Dommage...