Bonjour,
Je tente de faire une vérification du formulaire via PHP. (celle en jquery semble ok, mais comme tout le monde le sait, pas suffisante)
Voici les vérifications que je veux faire :
J'ai une variable erreur_global, qui me dit si l'ensemble du formulaire est ok ou non.
En début de page, j'initialise cette variable à false. (il n'y a donc pas d'erreur sur le formulaire)
Seulement, elle ne passe jamais à true. même si $_POST['ville'] est vide.
Mon formulaire :
Ma vérification de la variable erreur_global se fait ainsi :
Après Edit et re Edit pour mise en page des "codes", Par avance, je vous remercie de votre aide.
Modifié par Alexbass (15 Dec 2014 - 20:37)
Je tente de faire une vérification du formulaire via PHP. (celle en jquery semble ok, mais comme tout le monde le sait, pas suffisante)
Voici les vérifications que je veux faire :
//VERIFICATION GLOBAL DU FORMULAIRE D'AJOUT / MODIF CLIENT ET ENREGISTREMENT DES INFOS.
//traitement des erreurs en PHP et message en PHP
if (isset($_POST["Valider"]) && $_POST["Valider"] === "Valider") //le formulaire est soumis, les erreurs php ne s'affichent pas au chargement simple de la page.
{
if (empty($_POST['raison_sociale'])) {$erreur2 = "Veuillez indiquer votre nom"; $erreur_global = true;}
if (!empty($_POST['telephone']) && !is_numeric(preg_replace('/\s/', '', $_POST['telephone']))) {$erreur7 = "Le numéro de téléphone semble incorrect (01 23 45 67 89)"; $erreur_global = true;}
if (!empty($_POST['telephone']) && strlen($_POST['telephone']) > 14 && strlen($_POST['telephone']) < 10) {$erreur7 = "Le numéro de téléphone semble incorrect (01 23 45 67 89)"; $erreur_global = true;}
if (empty($_POST['ville'])) {$erreur10 = "Ville absente";}
if (!empty($_POST['mdp1']))
{
if (empty($_POST['mdp2'])) {$erreur3= "Merci de confirmer le mot de passe."; $erreur_global = true;}
if (strlen($_POST['mdp1'] < 8)) {$erreur4= "Le mot de passe doit contenir au moins 8 carractères."; $erreur_global = true;}
if ($_POST['mdp1'] != $_POST['mdp2']) {$erreur5 = "Les mots de passe ne sont pas identiques."; $erreur_global = true;}
}
if($erreur_global = false) //s'il n'y a pas d'erreur....
{
include("database.php"); //connexion à la base de données
include("traitement_client.php"); // passage des valeurs en variables et enregistre les infos. (avec la variable session ajout_ou_modif, on sait si on update ou ajoute
}
}
//FIN DE VERIF FORM AJOUT CLIENT
J'ai une variable erreur_global, qui me dit si l'ensemble du formulaire est ok ou non.
En début de page, j'initialise cette variable à false. (il n'y a donc pas d'erreur sur le formulaire)
$erreur_global = false;
Seulement, elle ne passe jamais à true. même si $_POST['ville'] est vide.
Mon formulaire :
<form id="formulaire_ajout_clt" action="admin_modif_clients.php" method="post">
<p><small>Informations sur le client</small></p>
<label for="raison_sociale">Ville / Raison Sociale / Association / Nom* :</label><input id="raison_sociale" type="text" name="raison_sociale" placeholder="Nom, ville, raison sociale etc...." maxlength="100" size="40" value="<?php if(!empty($_POST['raison_sociale'])) { echo Securite::html($_POST['raison_sociale']); } elseif (!empty($_SESSION['rs'])) { echo Securite::html($_SESSION['rs']); } ?>"/>
<?php if (!empty($erreur2)) { echo '<label for="raison_sociale" class="error">' . $erreur2 . '</label>'; } ?>
<br/>
<label for="email2">Email :</label><input id="email" type="email" name="email" placeholder="exemple@mail.fr" maxlength="51" size="40" value="<?php if(!empty($_POST['email'])) echo Securite::html($_POST['email'])?>"/>
<br/>
<label for="add1">Adresse 1 :</label><input id="add1" type="text" name="add1" size="40" value="<?php if(!empty($_POST['add1'])) echo Securite::html($_POST['add1'])?>" />
<br/>
<label for="add2">Adresse 2 :</label><input id="add2" type="text" name="add2" size="40" value="<?php if(!empty($_POST['add2'])) echo Securite::html($_POST['add2'])?>" />
<br/>
<label for="add3">Adresse 3 :</label><input id="add3" type="text" name="add3" size="40" value="<?php if(!empty($_POST['add3'])) echo Securite::html($_POST['add3'])?>" />
<br/>
<label for="ville">Ville :</label><input id="ville" type="text" name="ville" size="40" value="<?php if(!empty($_POST['ville'])) echo Securite::html($_POST['ville'])?>" />
<?php if (!empty($erreur10)) { echo '<label for="ville" class="error">' . $erreur10 . '</label>'; } ?>
<br/>
<label for="CP">Code Postal :</label><input id="CP" type="text" name="CP" maxlength="5" value="<?php if(!empty($_POST['CP'])) echo Securite::html($_POST['CP'])?>" />
<br/>
<label for="telephone">Téléphone :</label><input id="telephone" type="tel" name="telephone" placeholder="06..." maxlength="14" value="<?php if(!empty($_POST['telephone'])) echo Securite::html($_POST['telephone'])?>"/>
<?php if (!empty($erreur7)) { echo '<label for="telephone" class="error">' . $erreur7 . '</label>'; } ?>
<p><small>Mot de passe du client</small></p>
<label for="mdp1">Nouveau mot de passe :</label><input id="mdp1" type="password" name="mdp1" size="20" value="<?php if(!empty($_POST['mdp1'])) echo Securite::html($_POST['mdp1'])?>"/>
<?php if (!empty($erreur4)) { echo '<label for="mdp1" class="error">' . $erreur4 . '</label>'; } ?>
<br/>
<label for="mdp2">Confirmer le mot de passe :</label><input id="mdp2" type="password" name="mdp2" size="20" value="<?php if(!empty($_POST['mdp2'])) echo Securite::html($_POST['mdp2'])?>"/>
<?php if (!empty($erreur3)) { echo '<label for="mdp2" class="error">' . $erreur3 . '</label>'; } ?>
<?php if (!empty($erreur5)) { echo '<label for="mdp2" class="error">' . $erreur5 . '</label>'; } ?>
<br/>
<input type="submit" name="Valider" value="Valider" title="Cliquez ici pour valider"/>
</form>
Ma vérification de la variable erreur_global se fait ainsi :
<?php if($erreur_global == true) { echo "<- ID CLIENT MODIF et -> erreur_global egale true";} else { echo "il n'y a pas d'erreur global sur le formulaire"; } ?>
Après Edit et re Edit pour mise en page des "codes", Par avance, je vous remercie de votre aide.
Modifié par Alexbass (15 Dec 2014 - 20:37)