Probleme avec formulaire de contact
matdollars
-
matdollars -
matdollars -
Bonjour,
Voila mon probleme. Quand j oublie de remplir un champ (c est pour tester) je n ai rien qui s affiche au lieu des phrases d erreurs.
voila mon code:
<?php
if($_POST){
//Récupération des données du formulaire----------------------------
$nom = $_POST["nom"];
$email = $_POST["email"];
$tel = $_POST["tel"];
$message = $_POST["commentaire"];
$societe = $_POST["societe"];
//------------------------------------------------------------------
//Gestion des erreurs de saisie-------------------------------------
$erreurs = array();
if( empty($nom)) $erreurs = "il manque votre nom";
if( empty($societe)) $erreurs = "il manque le nom de votre société";
if( empty($email)) $erreurs = "il manque votre email";
if( empty($tel)) $erreurs = "il manque votre téléphone";
if( empty($commentaire)) $erreurs = "il manque votre message";
//------------------------------------------------------------------
if(empty($erreurs)) {
$from = $email;
$reply = $from;
$to = "toto@toto.com"; //Mettez l'email de destination ici
$objet="message envoyé depuis le formulaire";
//Mise en forme du contenu au format HTML-----------------------
$contenu = "Nom: ".$nom;
$contenu .= "<br /> Société: ".$societe;
$contenu .= "<br /> Tel: ".$tel;
$contenu .= "<br /> Message: <br />";
$contenu .= $commentaire;
//--------------------------------------------------------------
//Entêtes de formatage de l'email en mode HTML------------------
$headers = 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\n";
$headers .= 'From: '.$from."\n";
$reply = $headers."Reply-to: ".$reply."\n";
//---------------------------------------------------------------
//Déclenchement de l'email et reroutage vers une autre page-----
$resultat = mail($to, $objet, $contenu, $reply);
if($resultat) {
echo "email envoyé";
} else {
echo "Echec dans l'envoi de l'email";
}
} else {
$texte_erreur = implode("<br />",$erreurs);
print $texte_erreur;
}
}
?>
Voila mon probleme. Quand j oublie de remplir un champ (c est pour tester) je n ai rien qui s affiche au lieu des phrases d erreurs.
voila mon code:
<?php
if($_POST){
//Récupération des données du formulaire----------------------------
$nom = $_POST["nom"];
$email = $_POST["email"];
$tel = $_POST["tel"];
$message = $_POST["commentaire"];
$societe = $_POST["societe"];
//------------------------------------------------------------------
//Gestion des erreurs de saisie-------------------------------------
$erreurs = array();
if( empty($nom)) $erreurs = "il manque votre nom";
if( empty($societe)) $erreurs = "il manque le nom de votre société";
if( empty($email)) $erreurs = "il manque votre email";
if( empty($tel)) $erreurs = "il manque votre téléphone";
if( empty($commentaire)) $erreurs = "il manque votre message";
//------------------------------------------------------------------
if(empty($erreurs)) {
$from = $email;
$reply = $from;
$to = "toto@toto.com"; //Mettez l'email de destination ici
$objet="message envoyé depuis le formulaire";
//Mise en forme du contenu au format HTML-----------------------
$contenu = "Nom: ".$nom;
$contenu .= "<br /> Société: ".$societe;
$contenu .= "<br /> Tel: ".$tel;
$contenu .= "<br /> Message: <br />";
$contenu .= $commentaire;
//--------------------------------------------------------------
//Entêtes de formatage de l'email en mode HTML------------------
$headers = 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\n";
$headers .= 'From: '.$from."\n";
$reply = $headers."Reply-to: ".$reply."\n";
//---------------------------------------------------------------
//Déclenchement de l'email et reroutage vers une autre page-----
$resultat = mail($to, $objet, $contenu, $reply);
if($resultat) {
echo "email envoyé";
} else {
echo "Echec dans l'envoi de l'email";
}
} else {
$texte_erreur = implode("<br />",$erreurs);
print $texte_erreur;
}
}
?>
A voir également:
- Probleme avec formulaire de contact
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Formulaire de contact le bon coin introuvable ✓ - Forum Vos droits sur internet
- Imessage ne fonctionne plus avec un contact ✓ - Forum iPhone
3 réponses
A la volée je regarde. Une question : lorsque tu rempli un champ seulement, cela t'affiche t'il le message ?
Atention à $erreur, définit comme tableau. A chaque fois que tu fais $erreur ="dfgdfg"; il remplace le contenu du tableau par sa dernière valeur. Faire array_push($erreurs,"nouvelle valeur") ou se reporter à la documentation des array de php
Voila mon erreur:
il n y avais pas les [] avant le signe =.
Voila la solution:
$erreurs = array();
if( empty($nom)) $erreurs[] = "il manque votre nom";
if( empty($societe)) $erreurs[] = "il manque le nom de votre société";
if( empty($email)) $erreurs[] = "il manque votre email";
if( empty($tel)) $erreurs[] = "il manque votre téléphone";
if( empty($commentaire)) $erreurs[] = "il manque votre message";
Je débute en php donc Olive peux tu préciser ce que tu voulez dire dans ton post ?
Merci.
il n y avais pas les [] avant le signe =.
Voila la solution:
$erreurs = array();
if( empty($nom)) $erreurs[] = "il manque votre nom";
if( empty($societe)) $erreurs[] = "il manque le nom de votre société";
if( empty($email)) $erreurs[] = "il manque votre email";
if( empty($tel)) $erreurs[] = "il manque votre téléphone";
if( empty($commentaire)) $erreurs[] = "il manque votre message";
Je débute en php donc Olive peux tu préciser ce que tu voulez dire dans ton post ?
Merci.