Ir para conteúdo

POWERED BY:

Arquivado

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

Martinsrj

[Resolvido] Dificuldade Vinculo entre duas tabelas

Recommended Posts

Segue o codigo:

<td bgcolor="f4f4f4">
<select name="txt_codprojeto" size="1" >
<option>Codigo do Projeto: </option>
Aqui e o while da PRIMEIRA COMBO
<% Do While Not rsDados.Eof %> 
<option value="<% = rsDados("cod_dados")%>">
<%=rsDados("cod_dados")%> 
</option>
<%
rsDados.MoveNext
LOOP%> 
</select> 
<%
Set rsDados=nothing 
'rsDados.Close
'Call FechaConexao
%>

<select name="txt_nomeprojeto" size="1" >
<option>Nao sabe o codigo, clique aqui: </option>
Aqui e o while da SEGUNDA COMBO
<% Do While Not rsDados2.Eof %> 
<option value="<% = var_cod_dados %>">
<%= var_cod_dados %> - <%= var_nomeprojeto %> 
</option>
<%
rsDados2.MoveNext
LOOP%> 
</select>
<%
Set rsDados2=nothing 
'rsDados2.Close
'Call FechaConexao
%>
						
						</td>

leia o meu post anterior

 

post o codigo que gera o segundo combo

Compartilhar este post


Link para o post
Compartilhar em outros sites

<% Do While Not rsDados2.Eof %>
<option value="<% = var_cod_dados %>">
<%= var_cod_dados %> - <%= var_nomeprojeto %>
</option>
<%
rsDados2.MoveNext
LOOP%>
</select>

esta vendo em nenhum momento voce seleciona aqui o nome do projeto

 

deve ter armazenado em uma outra oportunidade e por isso repete

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique este exemplo, naun tem como erra:

 

<% Option Explicit 

'declaro as var 
dim var1,var2,var3,....., etc 
'recupero as var 
varpais=request.querystring("pais") 
'crioa a conexao 
%> 

<!--# include file="conexao/conexao.asp"--> 

<% 
'abro a conexao 
Call abre_conexao 
'crio o rs 
set rspais=server.createobject("ADODB.Recordset") 
'crio a SQL 
SQLpais="SELECT * FROM pais ORDER BY nome" 
rspais.open SQLpais,conexao,1,3 
%> 

<form action="inserirend_action.asp" method="post"name="frmteste"> 
<select name="pais" size="1"> 

<% while not rspais.eof%> 
<option value="<%=rs("cod_pais")%>"> 
<% if varpais=rs("pais") then 
response.write("Selecionado") 
end if%> 
<%=rs("nome")%> 
</option> 
<% rspais.movenext 
wend%> 
</select> 
<% set rspais=nothing%> 

'aki crio o combo estado 

<select name="estado"size="1"> 
if request("pais") ="" then%> 
<option value=""> selecione um pais 
<%else 
'crio o SQL estado 
SQLestado="Select * from estado where cod_pais="&varpais&" Order by nome" 
'crio o rsestado 
set rsestado=server.createobject("ADODB.Recordset") 
rsestado.open SQLestado,conexao,1,3 
<%while not rsestado.eof%> 
<option value="<%=rsestado("cod_estado")%>"> 
<%=rs("nome")%> 
</option> 
<%rs.movenext 
wend 
end if%> 
</select> 
<% set rsestado=nothing%> 
<% 'fecho a conexao 
call fecha_conexao%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade no inicio do codigo eu crei um select, onde o while ira varrer a tabela em busca e que carregue na combo todos os projetos cadastrados.

<%
Dim conbd_gd, rsDados, rsDados2, strSQL, strSQL2, var_nomeprojeto, var_cod_dados, rs_Dados
strSQL = "SELECT * FROM tab_dadosprojeto"
strSQL = strSQL & " order by data desc"

strSQL2 = "SELECT * FROM tab_dadosprojeto"
strSQL2 = strSQL2 & " order by data desc"
Call AbreConexao

Set rsDados = conbd_gd.Execute(strSQL)
Set rsDados2 = conbd_gd.Execute(strSQL2)

var_cod_dados = rsDados2("cod_dados")
var_nomeprojeto = rsDados2("nome_projeto")

<% Do While Not rsDados2.Eof %>
<option value="<% = var_cod_dados %>">
<%= var_cod_dados %> - <%= var_nomeprojeto %>
</option>
<%
rsDados2.MoveNext
LOOP%>
</select>

esta vendo em nenhum momento voce seleciona aqui o nome do projeto

 

deve ter armazenado em uma outra oportunidade e por isso repete

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse é o erro

 

isso tem que ser chamado dentro do while

 

var_cod_dados = rsDados2("cod_dados")

var_nomeprojeto = rsDados2("nome_projeto")

Compartilhar este post


Link para o post
Compartilhar em outros sites

<select name="txt_nomeprojeto" size="1"> 

<% while not rsDados2.eof%>

<option value="<%=var_cod_dados %>">

<%= var_cod_dados & " - " & var_nomeprojeto %>

</option>

<% rsDados2.movenext

wend%>

</select>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola Xanburzum!

Fiz conforme o seu codigo e nao funcionou, aparece apenas o traco: -

 

Fiquei quebrando a cabeca aqui e so funciona dessa forma:

Reparem o segundo while, o que foi feita a modificacao no codigo.

<td bgcolor="f4f4f4">
<select name="txt_codprojeto" size="1" >
<option>Codigo do Projeto: </option>

<% Do While Not rsDados.Eof %> 
<option value="<% = rsDados("cod_dados")%>">
<%=rsDados("cod_dados")%> 
</option>
<%
rsDados.MoveNext
LOOP%> 
</select> 
<%
Set rsDados=nothing 
'rsDados.Close
'Call FechaConexao
%>

<select name="txt_nomeprojeto" size="1" >
<option>Nao sabe o codigo, clique aqui: </option>
<% Do While Not rsDados2.Eof %>
<option value="<% = rsDados2("cod_dados") %>">
<%= rsDados2("cod_dados") %> - <%= rsDados2("nome_projeto") %> 
</option>
<%
rsDados2.MoveNext
LOOP%> 
</select>
<%
Set rsDados2=nothing 
'rsDados2.Close
'Call FechaConexao
%>

 

<select name="txt_nomeprojeto" size="1"> 
<% while not rsDados2.eof%> 
<option value="<%=var_cod_dados %>"> 
<%= var_cod_dados & " - " & var_nomeprojeto %> 
</option> 
<% rsDados2.movenext 
wend%> 
</select>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não precisa mudar muita coisa exatamente como venho falando a alguns posts já

 

basicamente repito

 

isso tem que ser chamado dentro do while

 

var_cod_dados = rsDados2("cod_dados")

var_nomeprojeto = rsDados2("nome_projeto")

Para facilitar as coisas pois acho que você não está lendo atentamente as dicas

 

troque seu while por isso

 

é a mesma coisa so que com aquelas duas linhas dentro

 

<% Do While Not rsDados2.Eof 
var_cod_dados = rsDados2("cod_dados")
var_nomeprojeto = rsDados2("nome_projeto")
%>
<option value="<% = var_cod_dados %>">
<%= var_cod_dados %> - <%= var_nomeprojeto %>
</option>
<%
rsDados2.MoveNext
LOOP%>
</select>

Compartilhar este post


Link para o post
Compartilhar em outros sites

você deve ter gravado o nome do projeto fora do while e por isso não muda

agora que vi que alterou

 

em outras palavras você fez o que estava pedindo desde 12:41

 

como disse era só chamar o valor dentro do laço

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha um teste simples...

com valores definidos

 

<%
var_cod_dados="2"
var_nomeprojeto="nome"%>
<select name="txt_nomeprojeto" size="1"> 

<option value="<%=var_cod_dados %>"> 
<%= var_cod_dados & " - " & var_nomeprojeto %> 
</option> 


</select>

funciona,...

 

tenta assim

<select name="txt_nomeprojeto" size="1" >
<option>Nao sabe o codigo, clique aqui: </option>
<% Do While Not rsDados2.Eof %>
<option value="<% = rsDados2("cod_dados") %>">
<%= rsDados2("nomeprojeto") %> 
</option>
<%
rsDados2.MoveNext
LOOP%> 
</select>
<%
Set rsDados2=nothing 
'rsDados2.Close
'Call FechaConexao
%>

dá um response.write nas variaveis rsDados2("cod_dados") ,rsDados2("nome_projeto")

response.write(rsDados2("cod_dados"))
response.write (rsDados2("nome_projeto"))
response.end()

para ver o k esta sendo passado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mario, coloquei o codigo exatamente que você mencionou:

<% Do While Not rsDados2.Eof 
var_cod_dados = rsDados2("cod_dados")
var_nomeprojeto = rsDados2("nome_projeto")
%>
<option value="<% = var_cod_dados %>">
<%= var_cod_dados %> - <%= var_nomeprojeto %>
</option>
<%
rsDados2.MoveNext
LOOP%>
</select>
Porem aparece assim na dela:

Imagem Postada

 

 

Não precisa mudar muita coisa exatamente como venho falando a alguns posts já

 

basicamente repito

 

isso tem que ser chamado dentro do while

 

var_cod_dados = rsDados2("cod_dados")

var_nomeprojeto = rsDados2("nome_projeto")

Para facilitar as coisas pois acho que você não está lendo atentamente as dicas

 

troque seu while por isso

 

é a mesma coisa so que com aquelas duas linhas dentro

 

<% Do While Not rsDados2.Eof 
var_cod_dados = rsDados2("cod_dados")
var_nomeprojeto = rsDados2("nome_projeto")
%>
<option value="<% = var_cod_dados %>">
<%= var_cod_dados %> - <%= var_nomeprojeto %>
</option>
<%
rsDados2.MoveNext
LOOP%>
</select>

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas voce continuou com o select?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mario, coloquei exatamente conforme você mesmo mencionou.

Analise o codigo abaixo:

<td height="35" bgcolor="f4f4f4" class="style3"> </td>
						<td bgcolor="f4f4f4">
<select name="txt_codprojeto" size="1" >
<option>Codigo do Projeto: </option>

<% Do While Not rsDados.Eof %> 
<option value="<% = rsDados("cod_dados")%>">
<%=rsDados("cod_dados")%> 
</option>
<%
rsDados.MoveNext
LOOP%> 
</select> 
<%
Set rsDados=nothing 
'rsDados.Close
'Call FechaConexao
%>

<% Do While Not rsDados2.Eof 
var_cod_dados = rsDados2("cod_dados")
var_nomeprojeto = rsDados2("nome_projeto")
%>
<option value="<% = var_cod_dados %>">
<%= var_cod_dados %> - <%= var_nomeprojeto %>
</option>
<%
rsDados2.MoveNext
LOOP%>
</select>
<%
Set rsDados2=nothing 
'rsDados2.Close
'Call FechaConexao
%>
						
						</td>

Abracos.

 

mas voce continuou com o select?

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESOLVIDO dessa forma:

<td height="35" bgcolor="f4f4f4" class="style3"> </td>
						<td bgcolor="f4f4f4">
<select name="txt_codprojeto" size="1" >
<option>Codigo do Projeto: </option>

<% Do While Not rsDados.Eof %> 
<option value="<% = rsDados("cod_dados")%>">
<%=rsDados("cod_dados")%> 
</option>
<%
rsDados.MoveNext
LOOP%> 
</select> 
<%
Set rsDados=nothing 
'rsDados.Close
'Call FechaConexao
%>

<select name="txt_nomeprojeto" size="1" >
<option>Nao sabe o codigo, clique aqui: </option>
<% Do While Not rsDados2.Eof %>
<option value="<% = rsDados2("cod_dados") %>">
<%= rsDados2("cod_dados") %> - <%= rsDados2("nome_projeto") %> 
</option>
<%
rsDados2.MoveNext
LOOP%> 
</select>
<%
Set rsDados2=nothing 
'rsDados2.Close
'Call FechaConexao
%>
						
						</td>
					  </tr>

Desde ja agradeco a todos pela ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

aravilha parabens...

precisando estamos ae...

Compartilhar este post


Link para o post
Compartilhar em outros sites

naun eskça ,tb k mais para frente você pode implementar suas combos com AJAX....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Assim você quer me matar... rsrsrsrsrs

Estou lutando aqui para uma oportunidade na empresa e estou suando apenas com ASP... rsrsrsrsrs... mas valeu pela dica, nao podemos parar de incrementar as nossas aplicacoes, mas no momento sinto uma dificuldade no ASP. Mas vou chegar la, tenho que crescer profissionalmente.

 

Obrigado mais uma vez.

 

naun eskça ,tb k mais para frente você pode implementar suas combos com AJAX....

Compartilhar este post


Link para o post
Compartilhar em outros sites

sem problemas você pode implementar isso mais na frente,depois de ter se solidificado mais...

 

até a próxima..

Compartilhar este post


Link para o post
Compartilhar em outros sites

que bom que resolveu seu problema

 

Abraços

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.