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 :

Récupérer la valeur d'une case à cocher


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 10
    Points : 6
    Points
    6
    Par défaut Récupérer la valeur d'une case à cocher
    Bonjour à tous, je voudrais developper une liste de donnée avec checkbox.
    Si l'on clique sur certaines checkbox, je recupère leur valeur et les supprime de ma base.
    [ Un peu comme une liste d'email/je coche ceux dont je veux supprimer/je clique sur le bouton supprimer/mes emails selectionnés sont supprimés]

    Pour le moment, j'essaye de recuperer les valeurs des checkbox selectionnés.
    Pour la suppression je verrai plus tard.

    Voici la liste de mes chechbox :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    <form method="post" action="test_check.php" name="formulaire">
    <?php
    $rqt = mysql_query('SELECT * FROM contact WHERE client="13" ORDER BY nom ');
    while ($data = mysql_fetch_assoc($rqt)){
     echo'<input type="checkbox" name="contact"  value="'.$data['IDcontact'].'"  />'. $data['nom'].'<br />';
    }
    ?>
    <input type="submit" name="submit" value="supprimer" />
    </form>
    Cela m'affiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <input type="checkbox" name="contact"  value="4"  />nom1<br />
    <input type="checkbox" name="contact"  value="5"  />nom2<br />
    <input type="checkbox" name="contact"  value="8"  />nom3<br />
    <input type="checkbox" name="contact"  value="3"  />nom4<br />

    J'essaye de recuperer les données selectionnées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (isset($_POST['submit'])) {
     $text = $_POST["contact"];
     echo $text;
    }
    Cela m'indique qu'une seule valeur, même si j'en choisi plusieurs.

    Pourriez-vous me donner un petit coup de main, Merci!

  2. #2
    Futur Membre du Club
    Inscrit en
    Août 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Voici une réponse que je viens de trouver.

    http://php.developpez.com/sources/?page=forms#postcheck

    Cependant je n'arrive pas à l'adapter...

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Qui dit checkbox dit sélection multiple donc un résultat sous forme de tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo'<input type="checkbox" name="contact[]"  value="'.$data['IDcontact'].'"  />'. $data['nom'].'<br />';

  4. #4
    Futur Membre du Club
    Inscrit en
    Août 2006
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Merci pour votre réponse.
    C'est noté pour mettre une variable dans le name.
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    <form method="post" action="test_check.php" name="formulaire">
    <?php
    $rqt = mysql_query('SELECT * FROM contact WHERE client="13" ORDER BY nom ');
    while ($data = mysql_fetch_assoc($rqt)){
     echo'<input type="checkbox" name="contact.$data['IDcontact'].'"  value="'.$data['IDcontact'].'"  />'. $data['nom'].'<br />';
    }
    ?>
    <input type="submit" name="submit" value="supprimer" />
    </form>
    Mais je ne sais pas comment récuperer cet valeur ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    if (isset($_POST['submit'])) {
     $text = $_POST["contact"];
     echo $text;
    }
    je propose :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    if (isset($_POST['submit'])) {
     $text = $_POST["contact'.$data['IDcontact'].'"];
     echo $text;
    }
    Mais cela ne fonctionnera pas. En effet mon $data est dans un while car je dois lire plusieurs d'un tableau de bass de données

    Merci de votre aide

  5. #5
    Membre averti
    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2007
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2007
    Messages : 267
    Points : 367
    Points
    367
    Par défaut
    Bonjour, alors voilà pour repondre à ton problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <form method="post" action="test_check.php" name="formulaire">
     
     
    <?php
    $rqt = mysql_query('SELECT * FROM contact WHERE client="13" ORDER BY nom ');
     
    while ($RS= mysql_fetch_array($rqt))
    {
             extract($RS);
    echo" <input type='checkbox' name=data[]' value='$IDcontact' >$nom</br>";
    }
    ?>
    IDcontact est un champ de ta requete, et nom le nom d'un autre champs de ta requete...
    Cela va créer :
    alex
    alain
    christophe
    antoine

    Avec un tableau qui aura si tu coche tout
    data[0]=1 // 1 et 2 etant les IDcontact...
    data[1]=2
    ...

    Ensuite dans ta seconde page tu ecris cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $TABLEAU=$_POST[data]; //passage du tableau (data) dans un autre tableau
     
    foreach ($TABLEAU as $value) //tu passes la valeur actuelle dans une clef
     {
     
    <?
    echo " $value " ;
    ?>
     
    }
    cela devrait ecrire :

    alex
    alain
    christophe
    antoine...

    Normalement cela devrait repondre à ta question...
    Le code n'est pas très propre mais a 1h30 j'éspère etre excusé...

Discussions similaires

  1. Récupérer la valeur d'une case à cocher
    Par defluc dans le forum VBScript
    Réponses: 1
    Dernier message: 05/11/2011, 20h03
  2. [PHPExcel] Récupérer la valeur d'une case à cocher
    Par arnogb69 dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 04/11/2010, 16h35
  3. Récupérer la valeur d'une case à cocher
    Par emmy99 dans le forum Langage
    Réponses: 5
    Dernier message: 08/03/2008, 20h59
  4. Comment récupérer l'état d'une case à cocher
    Par oursquetaire dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 10/01/2006, 08h58
  5. Pb pour récupérer la velur d'une case à cocher
    Par muppetshow dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/04/2005, 21h23

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