Problème de formulaire php
bnx68
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
bnx68 Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
bnx68 Messages postés 13 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous, je suis débutant en php et pour mon site j'ai bidouillé un formulaire qui fonctionne bien sauf qu'il n'envoie pas le message à l'email demandé, quelqu'un pourrait il m'expliquer ce qu'il manque à mon code svp, merci d'avance
<?php
// Initialise les variables
$erreur = NULL;
$info = NULL;
if(!empty($_POST['pseudo']) AND !empty($_POST['email']) AND !empty($_POST['message'])){
extract($_POST);
if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $email)){
$pseudo = htmlentities(addslashes($pseudo));
$email = htmlentities(addslashes($email));
$message = htmlentities(addslashes($message));
$message = 'Pseudo : '.$pseudo.' '."\n".' Message : '.$message.'';
$sujet = "Formulaire de contact";
$destinataire = "bnx68@hotmail.fr";
$entete ='From: '.$email.'';
echo $entete;
mail($destinataire,$sujet,$message,$entete);
$info = 'Votre message à été envoyé';
unset($_POST);
unset($message);
unset($email);
unset($pseudo);
}
else{
$erreur = 'Votre adresse email est invalide';
}
}
else {
$erreur = 'Veuillez remplir tous les champs obligatoires *';
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>contact</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="design" href="images/design.css" />
</head>
<body>
<div id="contenu">
<!--Le contenu -->
<h1 style="text-align:center;">Formulaire de contact </h1>
<form method="post" id="formulaire_contact" target="">
<fieldset>
<legend> Formulaire de contact</legend>
<label for="pseudo">Pseudo* : </label><input type="text" name="pseudo" id="pseudo" value="<?php if(isset($pseudo)) echo $pseudo; ?>"/><br/>
<label for="email">Email* : </label><input type="text" name="email" id="email" value="<?php if(isset($email)) echo $email; ?>"/><br/>
<form name="form1">
<label>Oui <input type="radio" name="choix" value="1" /></label>
<label>Non <input type="radio" name="choix" value="0" /></label>
<div id="hidden">
<label>Champ 1 <input type="text" /></label>
</div>
</form>
<script type="text/javascript">
var oui = document.form1.choix[0];
var non = document.form1.choix[1];
oui.onclick = function() {
document.getElementById("hidden").style.display = "block"
};
non.onclick = function() {
document.getElementById("hidden").style.display = "none"
};
</script>
<label for="message">Message* : </label><textarea name="message" id="message" ><?php if(isset($message)) echo $message; ?></textarea><br/>
<input type="submit" value="Envoyer"/><span style="color:red"> <?php echo $erreur; ?></span><span style="color:green"> <?php echo $info; ?></span>
</fieldset>
</form>
</div>
</body>
</html>
<?php
// Initialise les variables
$erreur = NULL;
$info = NULL;
if(!empty($_POST['pseudo']) AND !empty($_POST['email']) AND !empty($_POST['message'])){
extract($_POST);
if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $email)){
$pseudo = htmlentities(addslashes($pseudo));
$email = htmlentities(addslashes($email));
$message = htmlentities(addslashes($message));
$message = 'Pseudo : '.$pseudo.' '."\n".' Message : '.$message.'';
$sujet = "Formulaire de contact";
$destinataire = "bnx68@hotmail.fr";
$entete ='From: '.$email.'';
echo $entete;
mail($destinataire,$sujet,$message,$entete);
$info = 'Votre message à été envoyé';
unset($_POST);
unset($message);
unset($email);
unset($pseudo);
}
else{
$erreur = 'Votre adresse email est invalide';
}
}
else {
$erreur = 'Veuillez remplir tous les champs obligatoires *';
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>contact</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="design" href="images/design.css" />
</head>
<body>
<div id="contenu">
<!--Le contenu -->
<h1 style="text-align:center;">Formulaire de contact </h1>
<form method="post" id="formulaire_contact" target="">
<fieldset>
<legend> Formulaire de contact</legend>
<label for="pseudo">Pseudo* : </label><input type="text" name="pseudo" id="pseudo" value="<?php if(isset($pseudo)) echo $pseudo; ?>"/><br/>
<label for="email">Email* : </label><input type="text" name="email" id="email" value="<?php if(isset($email)) echo $email; ?>"/><br/>
<form name="form1">
<label>Oui <input type="radio" name="choix" value="1" /></label>
<label>Non <input type="radio" name="choix" value="0" /></label>
<div id="hidden">
<label>Champ 1 <input type="text" /></label>
</div>
</form>
<script type="text/javascript">
var oui = document.form1.choix[0];
var non = document.form1.choix[1];
oui.onclick = function() {
document.getElementById("hidden").style.display = "block"
};
non.onclick = function() {
document.getElementById("hidden").style.display = "none"
};
</script>
<label for="message">Message* : </label><textarea name="message" id="message" ><?php if(isset($message)) echo $message; ?></textarea><br/>
<input type="submit" value="Envoyer"/><span style="color:red"> <?php echo $erreur; ?></span><span style="color:green"> <?php echo $info; ?></span>
</fieldset>
</form>
</div>
</body>
</html>
A voir également:
- Problème de formulaire php
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Easy php - Télécharger - Divers Web & Internet
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
3 réponses
ton formulaire fonctionne très bien chez moi, bien que certains champs ne sont pas traités.
Si tu teste en local, as tu bien configuré ton php.ini avec le bon smtp de ton FAI?
Si tu teste en local, as tu bien configuré ton php.ini avec le bon smtp de ton FAI?