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

ASP.NET Discussion :

Inserer des booléens à partir des checkBox


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de SonnyFab
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 498
    Par défaut Inserer des booléens à partir des checkBox
    Bonjour,
    alors là ce problème je sais vraiment pas comment l'aborder mais je vais tenter de vous l'expliquer de façon simple:

    J'ai un panel constitué de checkbox créer dynamiquement (bien que ce ne soit ici le problème!).
    D'un autre coté j'ai une table sous SQL server qui est composé des champs en grande partie de type bit (booléen), l'autre champ recupère le nom disons du groupe créer.

    Chaque checkBox correspond à un champ bit de la table.

    J'aimerais avoir une fonction qui à l'appel, rempli cette table en fonction des chechBox cochés, c'est à dire si un checkBox est coché il insère 1 sinon il insère 0 dans le champ correspondant.

    Pour le nom c'est plus facile parceque le nom est dans un textBox!
    donc je fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    insert into MaTable (NomGroupe) values('"+MonTextBox+"')
    Mais pour les checkBox je vois vraiment pas!

    Merci de m'aider

  2. #2
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Je te dirais de tester avec la propriété "Checked" de chacune de tes CheckBox, genre si c'est vrai ça renvoie 1, si c'est faux ça renvoie 0 (mais je pense que c'est un peu trop long de tester pour chaque CheckBox...)

  3. #3
    Membre éclairé Avatar de SonnyFab
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 498
    Par défaut
    ouais je me disais aussi mais sinon ce que tu viens de dire heu .. d'écrire n'est pas mal
    si c'est vrai ça renvoie 1
    Esque la valeur d'un checkbox coché vaut 1?

  4. #4
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Bah pour tes champs bit, vrai = 1 et faux = 0, j'aurais fait une vérification pour chaque CheckBox :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    if (CheckBox.Checked)
    {
        tarequete.Parameters.AddWithValue("champbit", 1);
    }
     
    else
    {
        tarequete.Parameters.AddWithValue("champbit", 0);
    }
    Mais je suis sûr qu'il y a plus simple

  5. #5
    Membre éclairé Avatar de SonnyFab
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 498
    Par défaut
    De grace va doucement moi j'apprends ce langage
    je comprend pas la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tarequete.Parameters.AddWithValue("champbit", 1);
    Ma requete est un insert:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Dim Command14 As New SqlCommand("insert into MaTable values () ", Conn)
            Dim numberOfRows As String
    	    numberOfRows= Command14.ExecuteNonQuery ()
    Comment vais-je introduire sa dans le if?

  6. #6
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Ah t'utilise du Visual Basic, je croyais du C#

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tarequete.Parameters.AddWithValue("champbit", 1);
    Cette ligne signifie que tu attribues un paramètre à ta requête d'insertion, tu dois juste donner le nom du champ de la table appropriée et la valeur (1 ou 0). Je ne sais pas si tu peux faire quelque chose de similaire en Visual Basic.

    Et dans ta requête, tu peux faire comme ça pour attribuer des paramètres :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim Command14 As New SqlCommand("insert into MaTable values (@parametre1, @parametre2, @parametre3) ", Conn)
    Le "@" sert à attribuer un paramètre dans une requête, maintenant je te redis : je sais pas si on peut faire la même chose avec VB

  7. #7
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 103
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 103
    Par défaut
    vous risquez pas de vous comprendre si vous parler un langage différent lol

    C# c'est pas vb.net

    en plus vu que tu écrivait en C# moi j'aurais écrit quelque chose de beaucoup plus simple et moins encombrant et guère plus difficile à lire...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    tarequete.Parameters.AddWithValue("champbit", (checkBox.Checked) ? 1 : 0);
    pourquoi écrire 15 lignes de code quand une seule suffit et qu'elle n'est guère plus illisible... bon après c'est vrai c'est une question d'habitude, mais vu la pléthore de constructions syntaxiques disponible pour facilité la fainéantise, autant les exploiter.

    en vb.net malheureusement cette expression condensée n'existe pas

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

Discussions similaires

  1. Utilisation des jours à partir des dates
    Par coquero dans le forum SQL
    Réponses: 8
    Dernier message: 09/07/2008, 14h22
  2. Dessiner des graphiques à partir des données d'une BD MySQL
    Par condor_01 dans le forum Général Java
    Réponses: 6
    Dernier message: 24/04/2008, 09h35
  3. Réponses: 3
    Dernier message: 13/09/2007, 18h11
  4. gérer des rappels à partir des dates
    Par gsaly dans le forum Access
    Réponses: 2
    Dernier message: 18/07/2007, 17h16
  5. Créer des imagettes à partir des fichires TIF
    Par Chikh001 dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 03/05/2006, 11h59

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