Expression régulière et base de donnée
Résolu
2Max
-
2Max -
2Max -
Bonjour, le projet de mon site web est de simulé la vie d'un homme.
J'ai créer un formulaire d'inscription qui enregistre les informations de l'utilisateur sur une base de donnée Mysql.
Pour éviter que l'utilisateur enregistre n'importe quel caractère j'ai mis en place des expression régulière mais voilà :
Les données fausse ne sont pas enregistré mais les bonnes si.
Je me retrouve donc avec des champs à moitié remplis dans ma base de donnée.
Comment empêcher l'enregistrement des donnée quand celle-ci ne correspondent pas aux expressions régulières ?
Merci.
J'ai créer un formulaire d'inscription qui enregistre les informations de l'utilisateur sur une base de donnée Mysql.
Pour éviter que l'utilisateur enregistre n'importe quel caractère j'ai mis en place des expression régulière mais voilà :
Les données fausse ne sont pas enregistré mais les bonnes si.
Je me retrouve donc avec des champs à moitié remplis dans ma base de donnée.
Comment empêcher l'enregistrement des donnée quand celle-ci ne correspondent pas aux expressions régulières ?
Merci.
A voir également:
- Expression régulière et base de donnée
- Base de registre - Guide
- Formules mathématiques de base - Télécharger - Études & Formations
- Exemple base de données access à télécharger gratuit - Forum Access
- Expression écrite cm1 cm2 télécharger gratuit - Télécharger - Éducatifs
- Gigaset ne reconnait plus sa base - Forum telephonie fixe
7 réponses
Bonjour;
Bon voila une idée c'est que apés l'insertion tu fait un delete de ce champ si les champs saisis par l'user sont fausse. Dans ce cas je vs propose d'utiliser la notion du trigger en Mysql, regarde ce lien, http://dev.mysql.com/doc/refman/5.0/fr/using-triggers.html.
Dans votre cas le trigger sera :
CREATE TRIGGER ins_sum BEFORE INSERT ON account // BEFORE sera AFTER
FOR EACH ROW SET @sum = @sum + NEW.amount;
Une autre idée c'est que tu fait un test avant que tu fait l'insertion, L'action du bouton sera suivit par un test sur tout les champs (d bon ou d mouvais champ) si oui tu fait l'insertion si non tu fait rien (si tu veux tu affiche une page HTML ou tu indique à l'user, les faux champs .
Bonne chance.
Bon voila une idée c'est que apés l'insertion tu fait un delete de ce champ si les champs saisis par l'user sont fausse. Dans ce cas je vs propose d'utiliser la notion du trigger en Mysql, regarde ce lien, http://dev.mysql.com/doc/refman/5.0/fr/using-triggers.html.
Dans votre cas le trigger sera :
CREATE TRIGGER ins_sum BEFORE INSERT ON account // BEFORE sera AFTER
FOR EACH ROW SET @sum = @sum + NEW.amount;
Une autre idée c'est que tu fait un test avant que tu fait l'insertion, L'action du bouton sera suivit par un test sur tout les champs (d bon ou d mouvais champ) si oui tu fait l'insertion si non tu fait rien (si tu veux tu affiche une page HTML ou tu indique à l'user, les faux champs .
Bonne chance.
re;
bin tt d'abord tu travail avc qel langage, pour le test par exemple :
if ( tout les champs sont pas vide)
INSERT ............
sinon
(tu affiche par exemple une page HTML pour l'user erreur d'insertion cause : champs vide)
fin
bonne chance.
bin tt d'abord tu travail avc qel langage, pour le test par exemple :
if ( tout les champs sont pas vide)
INSERT ............
sinon
(tu affiche par exemple une page HTML pour l'user erreur d'insertion cause : champs vide)
fin
bonne chance.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je travaille avec le langage XHTML, PHP.
Mais quel code j'utilise pour vérifier si tous les champs sont vides ?
Mais quel code j'utilise pour vérifier si tous les champs sont vides ?
J'ai trouvé ma réponse.
Pour les autres :
La fonction unset() détruit une variable.
J'ai donc mi :
Traduction :
Si la variable $_POST['exemple'] correspond au regex alors on l'enregistre sinon on met un message d'erreur et on détruit la variable, si il manque une variable alors rien ne s'enregistre dans la BDD.
Pour les autres :
La fonction unset() détruit une variable.
J'ai donc mi :
if("**votre regex**", $_POST['exemple']; { $requete_exemple = $_POST['exemple']; } else { echo 'L'exemple n\'est pas valable'; unset($_POST['exemple'] }
Traduction :
Si la variable $_POST['exemple'] correspond au regex alors on l'enregistre sinon on met un message d'erreur et on détruit la variable, si il manque une variable alors rien ne s'enregistre dans la BDD.