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 :

Récupération d'un tableau de checkbox et de radios [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
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 66
    Par défaut Récupération d'un tableau de checkbox et de radios
    Bonjour je souhaite à partir d'un formulaire récupérer une liste de checkbox et de radio.
    Le problème c'est que j'aimerais que les valeurs checkbox soient reliées à l'id d'un enregistrement existant en base et c'est là que ça me pose problème.
    Je ne sait pas comment le faire.
    Je produit mes tableaux de la façon suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    print('<TABLE>
        <CAPTION>Privileges</CAPTION>');
        while($dataPrivilege=mysql_fetch_row($resultPrivileges)){
            print('<tr>
                <td>'.$dataPrivilege[1].'</td>
                <td><input type="checkbox" name="choixPrivilege['.$dataPrivilege[0].']"></td>');
        }
    print('</TABLE>');
    Donc en fait je renvoie la valeur du checkbox dans le tableau choixPrivilege.
    resultprivilege est le résultat de la requête suivante, qui me renvoie l'id d'un enregistrement en indice 0 :
    SELECT * FROM PRIVILEGE;

    Et j'ai exactement le même problème avec des radio boutons.
    Si quelqu'un pourrai me donner au moins un début de piste ça m'arrangerais.
    Merci.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    188
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 188
    Par défaut
    Et si tu fais plutôt ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    print('<TABLE>
        <CAPTION>Privileges</CAPTION>');
        while($dataPrivilege=mysql_fetch_row($resultPrivileges)){
            print('<tr>
                <td>'.$dataPrivilege[1].'</td>
                <td><input type="checkbox" name="choixPrivilege[]" value="'.$dataPrivilege[0].'"></td>');
        }
    print('</TABLE>');
    ça devrait marcher en principe

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 66
    Par défaut
    Merci de ta réponse, ta solution fonctionne
    Mais je cherche toujours pour les boutons radio....
    Là je cherche à récupérer la réponse ET l'id correspondant pour chaque ligne du tableau...
    Voici le bout de code :
    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
     
    while($dataCat=mysql_fetch_row($resultCat)){//chaque ligne
        mysql_data_seek($resultDroitAcces, 0);
        print("<tr>
        <td>$dataCat[1]</td>
        ");
        while($dataDroitAcces=mysql_fetch_row($resultDroitAcces)){//colonne
            if($dataDroitAcces[2]==$DefaultAcces){//choix par defaut
                print('<td><input type="radio" name="choixDroitsAcces['.$dataCat[0].']" value="'.$dataDroitAcces[0].'"checked="checked"></td>
                ');
            }else{
                print('<td><input type="radio" name="choixDroitsAcces['.$dataCat[0].']" value="'.$dataDroitAcces[0].'"></td>
                ');
            }
        }
    print("</tr>");
    }
    Merci de m'indiquer un début de piste ^^

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    188
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 188
    Par défaut
    hummmmm
    Quand tu récupères tes données fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if(is_array($_POST["choixDroitsAcces"]))
    {
    foreach($_POST["choixDroitsAcces"] as $key=>$val)
    {
    echo 'ID='.$key.'====>VALEUR='.$val.'<br/>';
    }
    }

  5. #5
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2010
    Messages : 66
    Par défaut
    Merci ça fonctionne.
    Je met en résolu.

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

Discussions similaires

  1. Récupérer un tableau de checkbox !
    Par SunSyS dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 27/02/2006, 14h36
  2. Tableau de checkbox
    Par rdams dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 29/08/2005, 17h31
  3. récupérer un tableau de checkbox
    Par mr.t dans le forum ASP
    Réponses: 3
    Dernier message: 05/04/2005, 16h11
  4. Style d'une ligne d'un tableau et Checkbox
    Par echecetmat dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/01/2005, 15h03

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