none
Como guardar multiples valores con un checkboxlist RRS feed

  • Pregunta

  • Tengo un checkboxlist con 4 alternativas, y quiero guardar las alternativas que estén seleccionadas, pero solo me guarda una alternativa y no las otras dos alternativas seleccionadas , como puedo hacer para que pueda guardar las 3 alternativas seleccionadas en mi base de datos.

    codigo vb.net

    Public Sub Guardarmultiplevalor()
            Dim respuestas As String = ""
            For Each item As ListItem In Me.CheckBoxList1.Items
                If item.Selected Then
                    respuestas = item.Selected
                End If
    
     	Dim selectSQL As String
            selectSQL = "Insert into OCL.tblDetalleRespuMultiple values ('@dniusu','" & respuestas & "') "
    
            Dim con As New SqlConnection(conString)
            Dim cmd As New SqlCommand(selectSQL, con)
            cmd.Parameters.AddWithValue("@dniusu", Session("DNI"))
            con.Open()
            Dim iCount As Integer = cmd.ExecuteNonQuery()
            con.Close()
    
            Next
    
    
           
        End Sub


    • Editado fredsale miércoles, 21 de octubre de 2015 1:10
    miércoles, 21 de octubre de 2015 1:07

Respuestas

  • hola

    pero se trata de una seleccion multiple, no puede hacer un foreach y solo tomar una seleccion como tampoco puedes tener un unico campo en la tabla

    aqui hay varias formas de solucionarlo

    una que me parece interesante y permite un solo campo aplica la tecnica del bitwise para trabajar con los operadores de bit y poder registrar 1,2,4,8, etc

     Representing Multiple Selections using a Single Value in Database Tables

    de esta forma si se seelcciona el primer check registras un 1, pero si se selecciona los dos check primeros registras un 3, o sea vas sumando los numeros si se marcan el primero y el cuarto registras un 1+8 = 9

    de esta forma con un solo campo puedes registrar multi seleccion

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 21 de octubre de 2015 10:06