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 :

Case à cocher et affichage d'un champ [PHP 5.1]


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut Case à cocher et affichage d'un champ
    bonsoir tous le monde après avoir chercher chez ami google
    je viens de vous poster mon problème:
    j'ai un formilaire qui contient plusieurs champ et un ckeckbox
    mon problème si que je veux lorsque crocher la case un champ de type file apparaitre
    et merci d'avance pour vous réponse

  2. #2
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut
    bonsoir tous le monde j'ai deja tember sur ce scripte la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     <script type="text/javascript">
              var compteur = 0;
             function ajouter(){
                // On récupère le fieldset
                var conteneur   = document.getElementById('fichiers');
                /**
                * Création des éléments dont on a besoin :
                * Un div dans lequel on mettra notre champ file et une case à cocher
                * qui nous servira à enlever ensuite le div.
                *
                * En utilisant un div ça sera plus facile car sinon
                * on aurais du enlever le champ file et la case à cocher séparément.
                */
                var undiv      = document.createElement('div');
                var fich      = document.createElement('input');
                var check      = document.createElement('input');
     
                fich.name   = 'mesfichiers[]';
                fich.type   = 'file';
     
                check.type   = 'checkbox';
     
                // On enlève sur le click de la checkbox
                check.onclick = function(){
                   // Elément à enlever
                   lediv      = this.parentNode;
                   // Elément auquel on enlève
                   lefieldset   = lediv.parentNode;
                   // On enlève !
                   lefieldset.removeChild(lediv);
                }
     
                /**
                * Ajout des éléments au div grace a appendChild
                * qui ajoute à la fin.
                * On utilise aussi createTextNode pour ajouter du texte apres la case
                */
                undiv.appendChild(fich);
                undiv.appendChild(check);
                undiv.appendChild(document.createTextNode("Enlever"));
     
                // Ajout du div :
                conteneur.appendChild(undiv);
             }
          </script>
    mais cette denier fait appel a une filedset mais pour moi je veux seulement recuperer le champ e type file
    svp quelq'un peut m'aider a amilioré ce scripte et merci d'avance pour vous reponse

  3. #3
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Yo,
    Alors moi je ferais bcp plus simple... Je mettrais ma case a coher dans un form
    Puis quand ce form est envoye alors tu affiche...
    un ex :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
     
    <form>
       <input type="checkbox" name="check" onclick="submit()"/>
    </form>
     
    <?
    if (isset($_GET['Check']))
    {
      $Balise= "<form>";
      $Balise.="<input type="file"/>";
      $Balise.="</form>";
     
      echo $Balise;
    }
    Guigo

  4. #4
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut
    bonsoir merci pour votre reponse mr guigo
    mais pour mois j'ai deja un formilaire qui contient des donnees venant d'une bdd mais le pro c qu j'ai un champ qui contient l'url d'ne image et on clic sur la case acocher il me saffiche un champ de type file afin de modifier l'image
    et merci encore une fois pour vous reponses

  5. #5
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    (Re)
    Je ne vois pas le pb!!!
    il suffi que tu passe l'url dans ton name de check box...

    Tu peux le recupere comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    foreach($_GET as $Key)
       $URL=$Key;
    Après à toi de voir
    Guigo

  6. #6
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut
    merci d'avance
    tout a fait mais comme j'ai dit moi je veux que lorsque tu clic sur case a cocher dans le meme formulaire avant submit ()
    et pour toi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="checkbox" name="check" onclick="submit()"/>
    mais pour moi sousmettre deformulaire vient aprés les modife que l'utilisateur peut les effectuer
    et merci encore une fois

  7. #7
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    Je suis d'accord...
    La petit finte c'est qu'il faut créer 2 form semantiquement
    (avec les balise <form>)
    Ca se sera invisible pour l'utilisateur qui aura un formulaire devant les yeux :-)

  8. #8
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut
    ok merci pour votre reponse
    mais pour mois je préfere d'utiliser une fonction ajax
    comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     <script type="text/javascript">
              var compteur = 0;
             function ajouter(){
                // On récupère le fieldset
                var conteneur   = document.getElementById('fichiers');
                /**
                * Création des éléments dont on a besoin :
                * Un div dans lequel on mettra notre champ file et une case à cocher
                * qui nous servira à enlever ensuite le div.
                *
                * En utilisant un div ça sera plus facile car sinon
                * on aurais du enlever le champ file et la case à cocher séparément.
                */
                var undiv      = document.createElement('div');
                var fich      = document.createElement('input');
                var check      = document.createElement('input');
     
                fich.name   = 'mesfichiers[]';
                fich.type   = 'file';
     
                check.type   = 'checkbox';
     
                // On enlève sur le click de la checkbox
                check.onclick = function(){
                   // Elément à enlever
                   lediv      = this.parentNode;
                   // Elément auquel on enlève
                   lefieldset   = lediv.parentNode;
                   // On enlève !
                   lefieldset.removeChild(lediv);
                }
     
                /**
                * Ajout des éléments au div grace a appendChild
                * qui ajoute à la fin.
                * On utilise aussi createTextNode pour ajouter du texte apres la case
                */
                undiv.appendChild(fich);
                undiv.appendChild(check);
                undiv.appendChild(document.createTextNode("Enlever"));
     
                // Ajout du div :
                conteneur.appendChild(undiv);
             }
          </script>
    tous ce qu'il faut si une petit amlioration afin de n'a pas afficher ce filedset
    j'essai de l'enlevé mais ca ne marche pas (il ne s'affiche rien) et pour cela que fait appelle a votre aide

  9. #9
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut
    merci pour votre aide
    aprés une grand bataille j'arrive a resolu ce probleme la donc
    merci encore une fois pour votre aide

  10. #10
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour
    Moi aussi je souhaiterai utiliser le script js du dessus. J'arrive bien a ajouter retirer dynamiquement un champ de saisie, mais je n'arrive pas a récupérer le text dans mon champ.
    Si quelqu'un a une idée merci de m'en faire par...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MIGRATION] champ de type "case à cocher"
    Par The_Nail dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 10/05/2011, 11h07
  2. Affichage de nouveau champ de formulaire avec une case à cocher
    Par breizhgen dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/09/2006, 21h46
  3. modifier champ texte en cases à cocher multiples
    Par gator dans le forum Langage
    Réponses: 7
    Dernier message: 03/07/2006, 11h41
  4. affichage en fonction de cases à cocher
    Par allowen dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 27/03/2006, 15h36
  5. Réponses: 10
    Dernier message: 13/02/2006, 15h29

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