IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Vider les champs d'un formulaire après validation


Sujet :

Langage PHP

  1. #1
    HwRZxLc4
    Invité(e)
    Par défaut Vider les champs d'un formulaire après validation
    Bonsoir,

    J'ai un formulaire qui si il n'est pas rempli correctement ré affiche les données, comment vider les champs après validation pour que quand on retourne sur le formulaire qu'il ne propose pas se qui a déjà été saisi avant en liste... ?

    Merci d'avance.

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Points : 502
    Points
    502
    Par défaut
    euhh logiquement si tu fait rien pour çà n'est pas censé réafficher les infos déjà entrés.

    rajoute des value="" dans des champs de formulaire peut etre

  3. #3
    HwRZxLc4
    Invité(e)
    Par défaut
    nan c'est pas de sa que je parle, je parle que le navigateur mémorise les champs des formulaires, or j'ai constaté que sur certain site sa mémorise pas quand on retourne sur le formulaire une nouvelle fois.

  4. #4
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985

  5. #5
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 360
    Points : 197
    Points
    197
    Par défaut
    moi perso je voit pas comment ta fais car je fait un site moi aussi et si les donnée ne sont pas corecte a la validation, le site te renvoy au formulaire et tous est vide mais je n'est rien fait de special et justement je voudrai pouvoir garder les infos mais a chaque foi tous est effecer

    montre nous ton code on poura peut etre voir d'ou sa vient

    il faudrait le code du formulaire et le code de la verif

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Points : 502
    Points
    502
    Par défaut
    Pour toi teen6517

    si tu veux que les valeur soit garder sur un exemple très simple il te suffit de mettre dans l'attribut value de ton input une valeur retourner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="champ1" value="<?php echo $_POST['champ1']; ?>" />
    Mais biensur c'est pas l'idéal car il vaut mieux envoyer le formulaire sur une url différente de l'affichage du formulaire

    dans ce cas tu stock les valeur de ton formulaire en session par exemple
    $_SESSION=$_POST et là logiquement çà garde les memes clefs

    ton action qui controle le formulaire s'il trouve une erreur alors tu renvoie vers l'url du formulaire avec un header()

    et alors dans ton formulaire tu aurai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="champ1" value="<?php if(!empty($_SESSION['champ1'])) echo $_SESSION['champ1']; ?>" />

  7. #7
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 360
    Points : 197
    Points
    197
    Par défaut
    etu sur de toi

    car empty détermine si une variable contient une valeur non nulle

    mais la premiere foi ou je afficher se formulaire il me semble que j'aurai un warning car il me dira que c'est une variable indeterminer ou quelque chose du meme jenre

    je vais tester et je verais bien.


    merci beaucoup

  8. #8
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Citation Envoyé par teen6517
    car empty détermine si une variable contient une valeur non nulle
    Non, empty() détermine si la variable existe et si elle est vide. La solution proposée par maximenet est l'idée à retenir.

    --> http://php.developpez.com/faq/?page=...type-functions

  9. #9
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 360
    Points : 197
    Points
    197
    Par défaut
    Si ta deux minute Yogui va voir ici


    http://fr3.php.net/manual/fr/function.empty.php


    je trouvais se tuto bien avec des exemple simple mais serait-il non fiable!!!!

  10. #10
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Ce que je voulais dire, c'est qu'il y a deux étapes dans le fonctionnement d'empty...
    1. Vérifier que la variable existe : oui => continue ; non => retourne TRUE (et ne continue pas)
    2. Vérifier que la valeur de la variable est non nulle (ou équivalent, cf. le lien précédent) : oui => retourne FALSE ; non => retourne TRUE.

  11. #11
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Points : 502
    Points
    502
    Par défaut
    Juste une précision avec ce que j'ai mis plus haut

    au lieu de $_SESSION=$_POST

    il serai préférable de faire plutot :

    $_SESSION['mon_form']=$_POST

    histoire de ne pas se mélanger les pinceaux avec les autres variables en sessions qui pourrai avoir le meme nom qu'un champ du formulaire, on ne sait jamais

    et puis aussi dans l'idéal il faudrai d'abord vérifier les champs fournis et ne garder dans $_POST que les valeurs qui sont valides pour ne pas réafficher les erreurs dans le formulaires

  12. #12
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 360
    Points : 197
    Points
    197
    Par défaut
    et puis aussi dans l'idéal il faudrai d'abord vérifier les champs fournis et ne garder dans $_POST que les valeurs qui sont valides pour ne pas réafficher les erreurs dans le formulaires

    c'était bien mon intention de ne garder que ce qui sont correcte



    mais je vais avoir quelque probleme car j'ai fait ma verification de maniere a ce que si une valeur et fausse on sort de la verif et on repar au formulaire sinon on verifie la suivante etc

    donc si la premiere donné est erronée alor aucune des autre n'est verrifier

    vous penser que c'est une mauvaise idée de consevoir de cette maniere?

  13. #13
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Points : 502
    Points
    502
    Par défaut
    ben avec ta méthode tu ne sauvegarde pas le contenu des champs qui suivent le champs éronnés.

    Donc moi en général ce que je fait c'est que je construit un tableau en session pour suivre l'exemple plus haut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $i=0;
    $_SESSION['mon_form']['erreurs'][++$i] = 'tu ajoute le commentaire que tu veux pour chaque champs erronés';
    et à la fin de la vérif du formulaire tu fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(!empty($_SESSION['mon_form']['erreurs'])){
        // tu renvoie vers le formulaire
    }else{
        // tu valide le formulaire
    }
    et juste au dessus du formulaire tu fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(!empty($_SESSION['mon_form']['erreurs'])){
        foreach($_SESSION['mon_form']['erreurs'] as $key=>$value){
            echo '<strong style="color:red">'.$value.'<strong><br />';
        }
    }

  14. #14
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Plutôt que styler la balise <strong>, je pense qu'il serait plus correct de styler la balise <span> :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <span style="color: red; font-weight: bold;">...</span>
    Sinon, j'approuve ^^

  15. #15
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 360
    Points : 197
    Points
    197
    Par défaut
    ok merci pour le conseil les mecs

  16. #16
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Points : 502
    Points
    502
    Par défaut
    oui enfin pour le style là c'était un exemple rapide, dans l'idéal j'ai une class en css et je ne met le style qu'une fois dans ma feuille css, car là sinon le style est répété plusieurs fois.

Discussions similaires

  1. Vider les champs d'un formulaire
    Par baggie dans le forum Langage
    Réponses: 27
    Dernier message: 24/11/2009, 16h03
  2. vider les champs d'un formulaire après validation
    Par WomanPSG76 dans le forum VBA Access
    Réponses: 7
    Dernier message: 31/08/2007, 12h25
  3. Vider les champs d'un formulaire une fois ce dernier validé
    Par Silveur dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 07/03/2007, 08h58
  4. Réponses: 1
    Dernier message: 04/06/2006, 00h35
  5. Réponses: 4
    Dernier message: 16/09/2005, 14h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo