Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cintiadel

[Resolvido] Checkboxlist vários registros no SQL

Recommended Posts

Beleza então vamos pra segunda parte, la na sua última página onde você já tem todos os valores armazenados em sua session.

Agora você fará um for com base na quantidade de items da sua Array.

Tente e poste o código desse for com base na array.

 

Abraços...

mas eu nao criei a array eu só joguei os valores em uma session, assim:

Dim q10 As String = ""
		Dim grad As CheckBoxList = cbl_grad.FindControl("cbl_grad") ' Recuperamos nosso checkboxlist
		' Navegamos nos itens do checkboxlist para verificar quais estão selecionados
		For i As Integer = 0 To grad.Items.Count - 1
			If grad.Items(i).Selected Then
				q10 = q10 & grad.Items(i).Value
			End If
		Next
desculpe eu to muito confusa com isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Depois que você tiver todos os valores armazenados na sua session basta:

Dim myArray As Array
		myArray = Session("sCheckBox").ToString.Split(",")

		For i As Integer = 0 To myArray.Length - 1
			Dim valorArray As String = myArray(i).ToString
			'Seu insert Aqui lenda a varival valorArray
		Next

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Depois que você tiver todos os valores armazenados na sua session basta:

Dim myArray As Array
		myArray = Session("sCheckBox").ToString.Split(",")

		For i As Integer = 0 To myArray.Length - 1
			Dim valorArray As String = myArray(i).ToString
			'Seu insert Aqui lenda a varival valorArray
		Next

Abraços...

deu erro na última página: Object reference not set to an instance of an object.

meu código ficou assim, nas páginas dos checkboxlist:

Dim q10 As String = ""
		Dim grad As CheckBoxList = cbl_grad.FindControl("cbl_grad") ' Recuperamos nosso checkboxlist
		' Navegamos nos itens do checkboxlist para verificar quais estão selecionados
		For i As Integer = 0 To grad.Items.Count - 1
			If grad.Items(i).Selected Then
				q10 = q10 & grad.Items(i).Value & ","
			End If
		Next

e na última do insert:

Dim myArray As Array
		myArray = Session("q10").ToString.Split(",")

		For i As Integer = 0 To myArray.Length - 1
			Dim valorArray As String = myArray(i).ToString
			'Seu insert Aqui lendo a variavel valorArray
			sqlGrava.InsertCommand = "Insert into tabela(questao,tipo_questao,resposta,email) values (10,1,'" & Session("valorArray") & "','" & Session("email") & "')"
			sqlGrava.Insert()

		Next

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você deve alimentar a Session("q10") em nenhum lugar você alimentou ela.

 

Abraços...

alimentei nessa linha ela tah pegando os valores selecionados:

q10 = q10 & grad.Items(i).Value & ","
pode me explicar o que é o que nessa linha:

Session.Add("cbl_grad", "1")

Compartilhar este post


Link para o post
Compartilhar em outros sites

Simplesmente cria uma session com o nome de cbl_grad com o valor 1.

O que você usou é uma variável, você tem que usar Session.

 

Abraços...

mas como pegar os valores selecionados no checkboxlist e jogar na session?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basta você falar que a Session é igual a variável que esta recebendo os valores do CheckBox

 

Dim q10 As String = ""
		Dim grad As CheckBoxList = cbl_grad.FindControl("cbl_grad") ' Recuperamos nosso checkboxlist
		' Navegamos nos itens do checkboxlist para verificar quais estão selecionados
		For i As Integer = 0 To grad.Items.Count - 1
			If grad.Items(i).Selected Then
				q10 = q10 & grad.Items(i).Value & ","
			End If
		Next
Session("q10") = q10

cintia você tem que pegar uma apostilas na net, dar uma olhada em alguns sites, são algumas coisas simples que um programador tem que conseguir fazer.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basta você falar que a Session é igual a variável que esta recebendo os valores do CheckBox

 

Dim q10 As String = ""
		Dim grad As CheckBoxList = cbl_grad.FindControl("cbl_grad") ' Recuperamos nosso checkboxlist
		' Navegamos nos itens do checkboxlist para verificar quais estão selecionados
		For i As Integer = 0 To grad.Items.Count - 1
			If grad.Items(i).Selected Then
				q10 = q10 & grad.Items(i).Value & ","
			End If
		Next
Session("q10") = q10

cintia você tem que pegar uma apostilas na net, dar uma olhada em alguns sites, são algumas coisas simples que um programador tem que conseguir fazer.

 

Abraços...

desculpe é q esse código tah me confundindo já coloquei na session que já havia feito antes, mas deve ter algo errado ainda pq ele n inseriu os valores certos no banco, fiz o debugue e ele pega os valores correto e guarda na session direitinho de acordo com o codigo acima, o erro deve estar na última página do insert:

Dim myArray As Array
		myArray = Session("q10").ToString.Split(",")

		For i As Integer = 0 To myArray.Length - 1
			Dim valorArray As String = myArray(i).ToString
			'Seu insert Aqui lendo a variavel valorArray
			sqlGrava.InsertCommand = "Insert into tabela (questao,tipo_questao,resposta,email) values (10,1,'" & Session("valorArray") & "','" & Session("email") & "')"
			sqlGrava.Insert()

		Next

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dim myArray As Array
		myArray = Session("q10").ToString.Split(",")

		For i As Integer = 0 To myArray.Length - 1
			Dim valorArray As String = myArray(i).ToString
			'Seu insert Aqui lendo a variavel valorArray
			sqlGrava.InsertCommand = "Insert into tabela (questao,tipo_questao,resposta,email) values (10,1,'" & valorArray & "','" & Session("email") & "')"
			sqlGrava.Insert()

		Next

De uma olhada no código que eu postei acima.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dim myArray As Array
		myArray = Session("q10").ToString.Split(",")

		For i As Integer = 0 To myArray.Length - 1
			Dim valorArray As String = myArray(i).ToString
			'Seu insert Aqui lendo a variavel valorArray
			sqlGrava.InsertCommand = "Insert into tabela (questao,tipo_questao,resposta,email) values (10,1,'" & valorArray & "','" & Session("email") & "')"
			sqlGrava.Insert()

		Next

De uma olhada no código que eu postei acima.

 

Abraços...

funcionou, só que inseriu além dos valores um registro em branco, pq sendo que na session n tem esse valor em branco, pode ter a ver com a virgula?

mas uma dúvida tenho q criar um array para cada checkboxlist?

Ou com esse código consigo concatenar, se consigo o que devo colocar no lugar de sCheckbox e no lugar do 1?

Session.Add("sCheckBox", "1")
		Session("sCheckBox") += ",2"
		Session("sCheckBox") += ",3"
		Session("sCheckBox") += ",4"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei por que foi inserido esse valor em branco, pode ser algum valor que veio na sua session.

Faça uma verificação antes do insert, faz um if verificando se valorArray é diferente de branco.

 

Abraços...

e qto a essa daqui:

mas uma dúvida tenho q criar um array para cada checkboxlist?

Ou com esse código consigo concatenar, se consigo o que devo colocar no lugar de sCheckbox e no lugar do 1?

Session.Add("sCheckBox", "1")
		Session("sCheckBox") += ",2"
		Session("sCheckBox") += ",3"
		Session("sCheckBox") += ",4"

Compartilhar este post


Link para o post
Compartilhar em outros sites

sCheckBox é o nome da sua session.

Os valores, 1, 2, 3, 4 são os valores do seu ChexkBox.

 

Abraços...

isso você ja havia me explicado a minha pergunta é tenho q criar um array para cada checkboxlist? e se devo vou ter q colocar para cada checkboxlist a session.add e tbm todos os valores do meu checkboxlist?

obrigada pela paciência

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não tem que ser uma array para cada checkbox, será uma array para cada formulário.

E você só tuiliza o Session.Add na primeira, quando você cria a session.

 

Abraços...

bom se cada checkboxlist esta numa pagina diferente entao estão em formulários diferentes correto?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim.

 

Abraços...

então vou ter q criar uma array para cada checkboxlist mesmo né?

não tem como fazer um loop sei lá pra pegar todos não?

ainda n entendi a utilização desse código, eu não usei ele, qual a funcionalidade dele:

Session.Add("sCheckBox", "1")
		Session("sCheckBox") += ",2"
		Session("sCheckBox") += ",3"
		Session("sCheckBox") += ",4"

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.