Ir para conteúdo

POWERED BY:

Arquivado

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

bartt

Listando por um combobox

Recommended Posts

Pagina que chama o .asp

<html><body><h1>Comparação tarifas</h1><form method="post" action="teste1.asp" ><br><select name="combo_colunas"><option value="" selected>Selectione a modalidade tarifária</option><option value="c_demanda" >Convencional Demanda</option><option value="c_energia" >Convencional Energia</option><option value="a_d_ponta" >Azul Demanda Ponta</option><option value="a_d_foraponta" >Azul Demanda Fora de Ponta</option><option value="a_e_p_seca" >Azul Energia Ponta Seca</option><option value="a_e_p_umido" >Azul Energia Ponta Umido</option><option value="a_e_fp_seca" >Azul Energia Fora de Ponta Seca</option><option value="a_e_fp_umido" >Azul Energia Fora de Ponta Umido</option><option value="v_demanda" >Verde Demanda</option><option value="v_e_p_seca" >Verde Energia Ponta Seca</option><option value="v_e_p_umido" >Verde Energia Ponta Umido</option><option value="v_e_fp_seca" >Verde Energia Fora de Ponta Seca</option><option value="v_e_fp_umido" >Verde Energia Fora de Ponta Umido</option></select><br><br><input type="submit" value="ordenar"></form></body></html>

 

Pagina teste1.asp

 

<%@ LANGUAGE="VBScript"%><html><head><title> </title></head><body><%Dim comandoSQLcaminho=server.mappath("db1.mdb")conexao ="dbq="&caminho&";driver={microsoft access driver (*.mdb)}"set con = server.createobject("adodb.connection")con.open conexaocomandoSQL = "SELECT * from tarifas"Set RS = con.EXECUTE(comandoSQL)%><table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><%Response.write("___________AKI QUERO COLOCAR O RESCULTADO DO COMBOBOX__________")%></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><% = RS("___________AKI QUERO COLOCAR O RESCULTADO DO COMBOBOX__________")%></td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table><%con.CloseSet con = Nothing%></body></html>

&Request.Form??

Bom, acho q ficou compreensivel minha duvida..

Grato!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

você quer que apareça o combo marcado ou o resultado o ítem?

 

Parte Editada:

 

Acho que entendi:

<% Response.Write(Request.Form("combo_colunas")) %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

o valor da escolha, por exemplo se ele escolheu "Convencional Demanda"

vai ficar por final:

 

<table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><%Response.write("c_demanda")%></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><% = RS("c_demanda")%></td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table>

 

eu tentei algo assim e nao soube usar:

<table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><%Response.write("&Request.Form("combo_colunas")&")%></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><% = RS("&Request.Form("combo_colunas")&")%></td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nossa nao tinha visto.. credo mal ae minha falta de atenção..

bom, na primeira parte deu certo mais na segundao nao consegui

 

<td>distribuidora</td><td><% Response.Write(Request.Form("combo_colunas")) %></td>tudo ok <td><% = RS("distribuidora")%></td><td><% = RS("Request.Form("combo_colunas")")%></td>  ??	  ' nao deu certo

Grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

assim?

<table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><% Response.Write(Request.Form("combo_colunas")) %></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><% Response.Write(Request.Form("combo_colunas")) %></td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table>

mais ai no lugar dos valores fica o nome da coluna :

 

distribuidora v_demanda

dist1 v_demanda <-(deveria ser o valor certo)

dist2 v_demanda

dist3 v_demanda

dist4 v_demanda

dist5 v_demanda

dist6 v_demanda

 

 

intendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sakei pra você fazer isso de forma simples ñ me recordo bem, mais pelo modo "na toralmente" pode ser com condicionais exemplo:

<table  border="1" cellspacing="0" cellpadding="0">
  <tr>
	<td>distribuidora</td>
	<td><% Response.Write(Request.Form("combo_colunas")) %></td>
  </tr>
  <% DO WHILE NOT RS.EOF %>
  <tr>
	<td><% = RS("distribuidora")%></td>
	<td><%
If Request.Form("combo_colunas") = "c_demanda" Then
	Response.Write("Convencional Demanda")

ElseIf Request.Form("combo_colunas") = "c_energia" Then
	Response.Write("Convencional Energia")

ElseIf Request.Form("combo_colunas") = "a_d_ponta" Then
	Response.Write("Azul Demanda Ponta")

ElseIf Request.Form("combo_colunas") = "a_d_foraponta" Then
	Response.Write("Azul Demanda Fora de Ponta")
 ''''.... e assim para todos ''''''
End If
	%></td>
  </tr>
  <%
  RS.MOVENEXT : LOOP
  %>
</table>

se você entendeu você continua o IF!

Compartilhar este post


Link para o post
Compartilhar em outros sites

na verdade continuou na mesma, sem os valores de cada consecionaria..

imprimiu o memso resultado pra todas as concecionarias no caso..

estava pensando em fazer algo do tipo: so que nao sei mt a sintaxe pois e a primeira pagina que faço em asp..

 

fazer um teste desses la em cima..(A SINTAXE DEVE TA ERRADA POIS TO APRENDENDO)

If Request.Form("combo_colunas") = "c_demanda" Then	variavel= "c_demanda"	ElseIf Request.Form("combo_colunas") = "c_energia" Then	variavel= "c_energia"

e fazer isso:

<table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><% Response.Write(Request.Form("combo_colunas")) %></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><% = RS(" VARIAVEL")%>		</td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table>

tem como?

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

mais com o IF você adapita do modo que quizer:

 

se quizer fazer assim ñ precisa do RS:

If Request.Form("combo_colunas") = "c_demanda" Then
	variavel= "c_demanda"
	
ElseIf Request.Form("combo_colunas") = "c_energia" Then
	variavel= "c_energia"

a resposta seria:

<table  border="1" cellspacing="0" cellpadding="0">
  <tr>
	<td>distribuidora</td>
	<td><% Response.Write(Request.Form("combo_colunas")) %></td>
  </tr>
  <% DO WHILE NOT RS.EOF %>
  <tr>
	<td><% = RS("distribuidora")%></td>
	<td><%=variavel%>
	
	</td>
  </tr>
  <%
  RS.MOVENEXT : LOOP
  %>
</table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho q teria pois

<td><% = RS("distribuidora")%></td>
lista as distribuidoras direitin so que a coluna dos valores(tarifas)

teria que ser

<% = RS(" VARIAVEL")%>
e essa variavel ser o valor da opção selecionada, porque se eu coloco

<table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><% Response.Write(Request.Form("combo_colunas")) %></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><% = RS("c_demanda")%></td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table>

ai ja lista direitinho as distribuidoras junto com seus valores da coluna c_demanda..

 

compreendeu?

 

vlw a ajuda ai!

 

 

como poderia fazer

 

<% = RS("variavel")%>

 

tipo em php ficaria

 

<% = RS("$variavel")%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

se está puxando uma variável ñ é assim <% = RS("c_demanda")%>

tem que ser como coloquei..<%=variavel%>

agora esse <% = RS("c_demanda")%> vem valores do banco?? Pois do jeito que você colocou é isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

If Request.Form("combo_colunas") = "c_demanda" Then	VARIAVEL = " c_demanda"ElseIf Request.Form("combo_colunas") = "c_energia" Then	VARIAVEL = " c_energia"

não teria como colocar o valor da variavel : <td><% = RS("___AKI??____")%></td>

 

porque se do jeito que você sugeriu lista o mesmo valor pra todos(lista o resultado da condição pra todas distribuidoras e nao seus valores):

<table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><% Response.Write(Request.Form("combo_colunas")) %></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><%=variavel%>		</td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table>
e quando fasso assim :

<table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><% Response.Write(Request.Form("combo_colunas")) %></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><% = RS("c_demanda")%></td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table>

lista do jeito certo so que esse c_demanda ali (uma das colunas da tabela), o usuario teria que escolher qual coluna desejaria listar os seus valores junto ao seu nome que tambem ja esta listando certo(<td><% = RS("distribuidora")%></td>)

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloque a condição no sql,

SELECT * from tabela where coluna = '"&Request.Fomr("combo_colunas")&"'

æ ele vai listar todos os da coluna que foi pedida no formulário!

Compartilhar este post


Link para o post
Compartilhar em outros sites

deu erro, tentei concertar mais nao consegui:

 

Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)

[Microsoft][Driver ODBC para Microsoft Access] Parâmetros insuficientes. Eram esperados 1.

/teste1.asp, line 18

 

<%@ LANGUAGE="VBScript"%><html><head><title> </title></head><body><%Dim comandoSQLcaminho=server.mappath("db1.mdb")conexao ="dbq="&caminho&";driver={microsoft access driver (*.mdb)}"set con = server.createobject("adodb.connection")con.open conexaocomandoSQL = " SELECT * from tarifas where coluna = '"&Request.Form("combo_colunas")&"' "Set RS = con.EXECUTE(comandoSQL)		%><table  border="1" cellspacing="0" cellpadding="0">  <tr>	<td>distribuidora</td>	<td><%Response.Write(Request.Form("combo_colunas"))%></td>  </tr>  <% DO WHILE NOT RS.EOF %>  <tr>	<td><% = RS("distribuidora")%></td>	<td><% = RS("c_demanda")%></td>  </tr>  <%  RS.MOVENEXT : LOOP  %></table><%con.CloseSet con = Nothing%></body></html>
seria com as aspas o erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

você tem esse campo "coluna" na sua tabela tarifas, pq eu coloquei só foi de exemplo!!

 

Como está sua tabela tarifas, quais as colunas, quais os valores que elas recebem?

Compartilhar este post


Link para o post
Compartilhar em outros sites

distribuidora | c_demanda | c_energia |a_d_ponta ...

nome_dist1 | 17,0 | 18,1 | 20,0

nome_dist2 | 14,1 | 15,2 | 19,7

nome_dist3 | 17,2 | 15,2 | 14,2

nome_dist4 | 22,1 | 11,1 | 13,2

nome_dist5 | 17,5 | 11,4 | 15,6

... | ... | ... | ...

 

 

 

Sako?

Compartilhar este post


Link para o post
Compartilhar em outros sites

você tem que fazer então um layout cara caber todas as colunas:

 

distribuidora | c_demanda | c_energia |a_d_ponta ...

 

ai vai ficar assim:

<%@ LANGUAGE="VBScript"%>
<html>
<head>
<title> </title>
</head>
<body>
<%
Dim comandoSQL

caminho=server.mappath("db1.mdb")
conexao ="dbq="&caminho&";driver={microsoft access driver (*.mdb)}"
set con = server.createobject("adodb.connection")
con.open conexao
comandoSQL = " SELECT * from tarifas"
Set RS = con.EXECUTE(comandoSQL)  
%>
<table  border="1" cellspacing="0" cellpadding="0">
  <tr>
	<td width="171">distribuidora</td>
	<td width="138">c_demanda</td>
	<td width="138">c_energia</td>
  </tr>
  <% DO WHILE NOT RS.EOF %>
  <tr>
	<td><% = RS("distribuidora")%></td>
	<td><% = RS("c_demanda")%></td>
	<td><% = RS("c_energia")%></td>
  </tr>
  
  <%
  RS.MOVENEXT : LOOP
  %>
</table>
<%
con.Close
Set con = Nothing
%>
</body>
</html>

desconsidere o codigo acima:

 

veja esse:

<%@ LANGUAGE="VBScript"%>
<html>
<head>
<title> </title>
</head>
<body>
<%
Dim comandoSQL

caminho=server.mappath("db1.mdb")
conexao ="dbq="&caminho&";driver={microsoft access driver (*.mdb)}"
set con = server.createobject("adodb.connection")
con.open conexao
comandoSQL = " SELECT distribuidora,"&Request.Form("combo_colunas")&" from tarifas "
Set RS = con.EXECUTE(comandoSQL)  
%>
<table  border="1" cellspacing="0" cellpadding="0">
  <tr>
	<td width="171">distribuidora</td>
	<td width="138"><% Response.Write(Request.Form("combo_colunas")) %></td>
  </tr>
  <% DO WHILE NOT RS.EOF %>
  <tr>
	<td><% = RS("distribuidora")%></td>
	<td><% Response.Write(Request.Form("combo_colunas")) %></td>
  </tr>
  
  <%
  RS.MOVENEXT : LOOP
  %>
</table>
<%
con.Close
Set con = Nothing
%>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

o resultado da lista vai ser duas colunas.a primeira vai ser a "distribuidora" e a segunda "a coluna do resultado do combobox"intendeu?esse ultimo post meu coloquei como ela ta no access

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.