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

PHP & Base de données Discussion :

Case à cocher et arborescence [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 178
    Par défaut Case à cocher et arborescence
    Bonjour , j'ai créer des checkbox en utilisant un tableau

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <input name="choix[]" type="checkbox" value="champ1" />
    <input name="choix[]" type="checkbox" value="champ11" />
     
     
    <input name="choix[]" type="checkbox" value="champ2" />
    <input name="choix[]" type="checkbox" value="champ22" />
    Je souhaiterais les stocker dans la base de donnée mysql et créer un arbre c'est a dire quand un utilisateur coche par exemple la case champs11
    je puisse récupérer la valeur ainsi champ1-->champ11
    ou champ2-->champ22 s'il a cocher la 22.

    Je souhaiterais avoir des conseils sur la façon de procéder?
    merci

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 138
    Par défaut
    Salut,

    Je pense que le soucis sera au niveau de ta bdd.

    Tu veux associer une un élément à un autre, alors il te suffira de faire le lien dans ta bdd. Si les éléments fonctionnent tjrs par binôme comme tu le montres, alors ca en sera encore plus simple.
    Table element :
    champs1 = elem1;
    champs2 = elem2;

    Ainsi tu pourras créer tous les couples que tu désireras.

    Le tableau choix[] que tu mets ira très bien avec un petit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while($choix=mysql_fetch_assoc($req)){
      echo $choix['elem1'];
    }
    Après si tu veux que ce soit fait de façon dynamique, tu devras aller voir du coté de l'AJAX.

    J'ai vraiment fait le minimum vital pour ta question, donc si tu comprends pas trop, je prendrai un peu plus de temps pour y répondre ^^, il suffira de demander.

    Cordialement,

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 178
    Par défaut
    Bon je commence un peu a avancer dans le sens ou j'ai compris un peu les arborescence donc j'ai créer ma table de donnée ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    CREATE TABLE categorie(
    categorie_id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(20) NOT NULL,
    parent INT DEFAULT NULL);
    aprés j'arrive aussi a affecté les valeurs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    INSERT INTO categorie
    VALUES(1,'ELECTRONICS',NULL),(2,'TELEVISIONS',1),(3,'TUBE',2),(4,'LCD',2),(5,'PLASMA',2),(6,'PORTABLE ELECTRONICS',1)
    Aprés je comprend plus dans le sens ou mes valeurs proviennent de checkbox quelle valeurs dois je attribuer à mes checkbox ?

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 138
    Par défaut
    Tu attribues a tes checkbox la valeur de ton id.

    Ainsi après requête SQL, tu devrais avoir un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    //Début du formulaire
     
    while($data=mysql_fetch_assoc(mysql_query($sql)){
    //Où $sql est ta requête SQL.
     
    echo "<input type=\"checkbox\" name=\"lenomquetuveux\" value=\"".$data['id']."\"> ".$data['nom']."<br>";
     
    }
     
    //Fin du formulaire
    Avec ce code tu récupères toutes les checkboxs que ta bdd contient, ensuite en fonction de l'élement choisi tu pourras aller choisir l'élément parent avec une requête SQL très simple.

    J'espère que c'est à peu près ce que tu souhaites ^^".

    Cordialement,

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 178
    Par défaut
    Merci evilam parceque grace a toi j'ai bien avancé donc la situation j'ai fais ceci comme tu m'a dis.

    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
     
    <?php
        echo '<form action="page1.php" method="post">';
     
        $sql=mysql_query("SELECT * FROM categorie")or die(mysql_error());
         while($data=mysql_fetch_assoc($sql))
    {
        echo "<input type=\"checkbox\" name=\"lenomquetuveux[]\" value=\"".$data['name']."\">".$data['name'].'<br>' ;
    }
        echo  "<input type=\"submit\" name=\"EnvoyerDonnee\" value=\"S'inscrire\">" ; 
        echo "</form>";
     
     
     
    if(isset($_POST['lenomquetuveux']))
     
    { 
           foreach($_POST['lenomquetuveux'] AS $valeur) 
          { 
                  echo $valeur,' a été cochée<br />'; 
          } 
    } 
     
    ?>
    Il affiche bien les cases que j'ai coché nikel crome

    Maintenant il me manque juste la Requete Sql por obetenir le resultat souhaité

    c'es a dire le parent--->l'enfant(case coché).

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 178
    Par défaut
    up

+ 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. Case à cocher dans une requête
    Par kloss dans le forum Access
    Réponses: 6
    Dernier message: 14/10/2004, 11h44
  3. Récupérer toutes les cases à cocher
    Par psyco2604 dans le forum ASP
    Réponses: 7
    Dernier message: 14/10/2004, 10h54
  4. Activer cases à cocher
    Par schnito dans le forum MFC
    Réponses: 4
    Dernier message: 24/01/2004, 16h07
  5. [CR] Création de tableau et case à cocher
    Par aysse dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 26/11/2003, 17h07

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