Probleme avec les conditions (if, else..)
Posté : 13 déc. 2011, 18:14
Bonjour, ça fais plusieurs jours je bloque sur une condition, je réfléchi, teste, ... mais trouve pas la solution 
j'ai un formulaires avec plusieurs champs à remplir obligatoirement, si la personne à oublié de remplir un champs, ça lui indique le champs qu'il a oublié... jusque là ça fonctionne et ça enregistre dans la base de donnée les infos...
j'ai un autre champ qui n'est pas obligatoire (même si la personne ne remplis pas le champs, les info s’enregistreront quand même dans la base de donnée)mais j'aimerais quand même indiqué à la personne si il a écrit une mauvaise saisie...,
mais je ne sais pas ou placer cette condition:
j'ai un formulaires avec plusieurs champs à remplir obligatoirement, si la personne à oublié de remplir un champs, ça lui indique le champs qu'il a oublié... jusque là ça fonctionne et ça enregistre dans la base de donnée les infos...
j'ai un autre champ qui n'est pas obligatoire (même si la personne ne remplis pas le champs, les info s’enregistreront quand même dans la base de donnée)mais j'aimerais quand même indiqué à la personne si il a écrit une mauvaise saisie...,
mais je ne sais pas ou placer cette condition:
if(!preg_match("/^[A-Za-z0-9\s_-.€]{1,}$/", $_POST["prix"]))
{
$message = "Votre champ prix n'est pas correctement rempli";
}
mon code// Redirige l'utilisateur s'il est pas identifié
if(!isset($_SESSION['id']))
{
header('Location: /index.php');
exit();
}
else
{
// Une fois le formulaire envoyé
if(isset($_POST["message"]) AND isset($_POST["titre"]) AND isset($_POST["departement"]) AND isset($_POST["contact"]))
{
// Vérification de la validité des champs
if(!preg_match("/^[A-Za-z0-9\sÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ'._-]{1,}$/", $_POST["titre"]))
{
$message = "Votre titre n'est pas rempli";
}
elseif(!preg_match("/^[A-Za-z0-9\sÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ@',._-]{1,}$/", $_POST["message"]))
{
$message = "Votre description n'est pas remplie";
}
elseif(!preg_match("/^[A-Za-z0-9\sÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ_-]{1,}$/", $_POST["departement"]))
{
$message = "Votre département n'est pas sélectionné";
}
elseif(!preg_match("/^[A-Za-z0-9\sÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ@._-]{1,}$/", $_POST["contact"]))
{
$message = "Votre contact n'a pas été rempli";
}
else
{
$gamme = htmlspecialchars($_POST["cliocompe"]);
$titre = htmlspecialchars($_POST["titre"]);
$description = htmlspecialchars($_POST["message"]);
$departement = htmlspecialchars($_POST["departement"]);
$contact = htmlspecialchars($_POST["contact"]);
$prix = htmlspecialchars($_POST["prix"]);
// Création du compte utilisateur
$query=$db->prepare('INSERT INTO annonce (
gamme
, titre
, description
, contact
, departement
, prix
)
VALUES (:gamme, :titre, :description, :contact, :departement, :prix)');
$query->bindValue(':gamme', $gamme, PDO::PARAM_STR);
$query->bindValue(':titre', $titre, PDO::PARAM_STR);
$query->bindValue(':description', $description, PDO::PARAM_STR);
$query->bindValue(':departement', $departement, PDO::PARAM_STR);
$query->bindValue(':contact', $contact, PDO::PARAM_STR);
$query->bindValue(':prix', $prix, PDO::PARAM_STR);
$query->execute();
// Si une erreur survient
if(!$query)
{
$message = "Erreur d'accès à la base de données lors de la création de votre annonce";
}
else
{
// Message de confirmation
$message = "Votre annonce a correctement été créer";
}
}
}
}