Php
jalalnet
Messages postés
293
Date d'inscription
Statut
Membre
Dernière intervention
-
jalalnet Messages postés 293 Date d'inscription Statut Membre Dernière intervention -
jalalnet Messages postés 293 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai un formulaire avec des champs puis le fichier php qui traite les donné avant l enregistrement dans la BDD j'ai utlisé les regex (expression régulière) pour cela .
la je voudrait savoir comme afficher les msg d'erreur au dessus de chaque champs dans la form si les données saisie ne convient pas mes règles
j'ai un formulaire avec des champs puis le fichier php qui traite les donné avant l enregistrement dans la BDD j'ai utlisé les regex (expression régulière) pour cela .
la je voudrait savoir comme afficher les msg d'erreur au dessus de chaque champs dans la form si les données saisie ne convient pas mes règles
A voir également:
- Php
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
2 réponses
Utilise une variable qui n'aura que deux valeurs (par exemple "0" si l'ensemble du formulaire est valide, "1" sinon). Tu l'initialises à 0. Pour chaque champ formulé, si ce n'est pas bon tu passes ta variable à 1.
A la fin, si la variable est à 1, tu renvoies sur la page formulaire. Si elle est restée à 0, fais les enregistrements dans la BDD avant de rediriger.
Sinon pour tout ce qui est message d'erreur et renvoi de données, perso j'aime bien utiliser un array dans une variable de session. Mais un bout de code vaut mieux qu'un long discours (et un c/c va m'éviter de dire des bêtises^^). Dans ta page php :
et dans ta page html tu fais un div que tu places bien avec le css, et dedans tu mets ton message :
sans oublier de remettre les données saisies dans les input, c'est mieux pour l'utilisateur :
Voilà pour l'idée de base. Ca demande à être complété, par exemple avec un système d'affichage de coches et de croix pour les champs valides ou non.
A la fin, si la variable est à 1, tu renvoies sur la page formulaire. Si elle est restée à 0, fais les enregistrements dans la BDD avant de rediriger.
Sinon pour tout ce qui est message d'erreur et renvoi de données, perso j'aime bien utiliser un array dans une variable de session. Mais un bout de code vaut mieux qu'un long discours (et un c/c va m'éviter de dire des bêtises^^). Dans ta page php :
//fonction de redirection, + pratique que header function redirige($url) { die('<meta http-equiv="refresh" content="0;URL='.$url.'">'); } // Récupération des données // Validation : // 0 -> la donnée est valide // 1 -> la donnée n'est pas valide $data_form = array( 'mNom' => ' ', 'mPrenom' => ' ', 'nom' => array(0,$_POST['nom']), 'prenom' => array(0,$_POST['prenom']) ); // Validation de tout le formulaire $form_valid=0; // test regex if ([le champ n'est pas valide]){ $form_valid=1; $data_form['nom'][0]=1; $data_form['mNom']='Le nom ne semble pas valide'; } //meme chose pour les autres champs, je ne mets pas le code // Redirection if ($form_valid==1){ //on envoit toutes les données dans une variable de session $_SESSION['data_form']=$data_form; redirige('tonFormulaire.html'); }
et dans ta page html tu fais un div que tu places bien avec le css, et dedans tu mets ton message :
<div class="erreur"> <?php if($_SESSION['data_form']['nom'][0]==1) echo $_SESSION['data_form']['mNom'];?> </div>
sans oublier de remettre les données saisies dans les input, c'est mieux pour l'utilisateur :
<input type="text" name="nom" value="<?php echo $_SESSION['data_form']['nom'][1]; ?>" />
Voilà pour l'idée de base. Ca demande à être complété, par exemple avec un système d'affichage de coches et de croix pour les champs valides ou non.