Ir para conteúdo

POWERED BY:

Arquivado

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

Fibi

Registros em várias linhas

Recommended Posts

Olá

 

Estou com um probleminha há dias e não consigo pensar numa solução.

 

Preciso adicionar registros em várias linhas diferentes usando um formulário com campos que se repetem numa tabela com uma estrutura assim: jog1 jog1_pais jog2 jog2_pais

 

Exemplo:

 

Linha 1

<input name="jog1" type="text" id="jog1"><input name="jog1_pais" type="text" id="jog1_pais">

<input name="jog2" type="text" id="jog2"><input name="jog2_pais" type="text" id="jog2_pais">

 

Linha 2

<input name="jog1" type="text" id="jog1"><input name="jog1_pais" type="text" id="jog1_pais">

<input name="jog2" type="text" id="jog2"><input name="jog2_pais" type="text" id="jog2_pais">

 

Linha 3... até a linha 16.

 

(adiciono uma vírgula depois do nome do jog1 para fazer funcionar)

 

Tentei usar o código abaixo, mas eu só consigo que o jog1 se divida em linhas, sempre adicionando uma com o jog1 em branco entre elas. Os outros campos ficam separados por vírgulas, mais ou menos assim:

 

jog1 jog1_pais jog2 jog2_pais

 

Zé BRA, POR João, Ricardo SUI, VEN

(em branco) BRA, POR João, Ricardo SUI, VEN

Manuel BRA, POR João, Ricardo SUI, VEN

.

.

.

 

Deveria ser:

 

jog1 jog1_pais jog2 jog2_pais

 

Zé BRA João SUI

Manuel POR Ricardo VEN

.

.

.

 

 

Meu código:

 

<%jog1_pais = Request.Form("jog1_pais")jog2 = Request.Form("jog2")jog2_pais = Request.Form("jog2_pais")Dim sConnection, Conn sConnection = "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost; DATABASE=***; UID=***;PASSWORD=***; OPTION=3" Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open(sConnection)	strListaId = Request.Form("jog1")	arrLista   = Split(strListaId,",")For i = LBound(arrLista) to UBound(arrLista)		Conn.Execute ("INSERT INTO resultados (jog1,jog1_pais,jog2,jog2_pais) VALUES ('" & cod_cat & "','" & arrLista(i) & "','" & jog1_pais & "','" & jog2 & "','" & jog2_pais & "')")	Next			Response.Redirect"x.asp"  Conn.close  Set Conn = Nothing%>

Alguém poderia me ajudar a solucionar? Acho que ficou meio confuso, mas estarei por aqui pra explicar melhor se for o caso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eae..

pelo q eu entendi você quer colocar um registro frente do outro nao é???

se for isso basta criar uma variavel que armazene eles adicionando a virgula, ex:

<%jog1 = request.form("jog1")jog1_pais = Request.Form("jog1_pais")jog2 = Request.Form("jog2")jog2_pais = Request.Form("jog2_pais")jog_full = jog1 & " , " & jog1_pais & " , " & "jog2" & " , " & jog2_pais '---- aki criei a variavel com todos os registros juntos....Dim sConnection, Conn sConnection = "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost; DATABASE=***; UID=***;PASSWORD=***; OPTION=3" Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open(sConnection)	strListaId = Request.Form("jog1")	arrLista   = Split(strListaId,",")For i = LBound(arrLista) to UBound(arrLista)		Conn.Execute ("INSERT INTO resultados (jog1,jog1_pais,jog2,jog2_pais) VALUES ('" & cod_cat & "','" & arrLista(i) & "','" & jog1_pais & "','" & jog2 & "','" & jog2_pais & "')")	Next			Response.Redirect"x.asp"  Conn.close  Set Conn = Nothing%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigada a todos por tentar entender essa confusão toda, mais ainda não é o que o Maux colocou ali.Vou tentar esclarecer: tenho um form com grupos de 4 inputs de nomes diferentes que se repetem por 16 vezes (então tenho vários inputs de nomes iguais, certo?). Exemplo:<input name="jog1" type="text"><input name="jog1_pais" type="text"><input name="jog2" type="text"><input name="jog2_pais" type="text"><input name="jog1" type="text"><input name="jog1_pais" type="text"><input name="jog2" type="text"><input name="jog2_pais" type="text"><input name="jog1" type="text"><input name="jog1_pais" type="text"><input name="jog2" type="text"><input name="jog2_pais" type="text"><input name="jog1" type="text"><input name="jog1_pais" type="text"><input name="jog2" type="text"><input name="jog2_pais" type="text">Minha intenção é colocar cada um desses grupos de 4 inputs de nomes diferentes numa linha diferente na tabela do meu bd. E fazer isso de uma vez, claro, para não ter de repetir o processo 16 vezes. Até consigo fazer a inserção, mas não sai do jeito que deveria.Se desse certo a tabela no bd ficaria assim:id | jog1 | jog1_pais | jog2 | jog2_pais----------------------------------------------1 | Zé | BRA | João | SUI ----------------------------------------------2 | Manuel | POR | Ricardo | VEN----------------------------------------------Até chegar nos 16 registros (grupos de input que descrevi ali em cima). E na verdade está ficando assim:id | jog1 | jog1_pais | jog2 | jog2_pais----------------------------------------------1 | Zé | BRA, POR | João, Ricardo | SUI, VEN ----------------------------------------------2 | (em branco) | BRA, POR | João, Ricardo | SUI, VEN----------------------------------------------3 | Manuel BRA, | POR João, | Ricardo | SUI, VENFicou melhor assim? Desculpem pela bagunça, mas não estou muito acostumada a descrever meu problema e postar. Geralmente consigo resolver tudo só fazendo uma busca pelo fórum. ;]

Compartilhar este post


Link para o post
Compartilhar em outros sites

já tentou colocar cada imput com um nome diferente e modificar seu sql?

Tentei algo assim, mas o resultado não foi o esperado.Enfim, fiquei um tempinho fuçando o código e algumas anotações e acabei encontrando uma solução.
strListaId = Request.Form("jog1")	arrLista   = Split(strListaId,",")id = 0do while id < uBound(arrLista) + 1		Conn.Execute ("INSERT INTO resultados (cod_cat,jog1,jog1_pais,jog2,jog2_pais) VALUES ('" & cod_cat & "','" & arrLista(id) & "','" & jog1_pais & "','" & jog2 & "','" & jog2_pais & "')")  id = id + 1	loop
Deu certinho agora. Obrigada a todos. ;]

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.