Ir para conteúdo
Fórum Script Brasil
  • 0

Pegar Variável


doulo4ever

Pergunta

Oi pessoal,

como eu faço para pegar a variável de um link e enviar para um select?

O link é:

default.asp?idcat=1

O select é:

Set menu = abredb.Execute("SELECT * FROM sessoes WHERE ver='s' AND cat='1' ORDER by nome;")

Eu tentei o seguinte:

<table border=1>

<%

'Monta o menu de departamentos

Set menu = abredb.Execute("SELECT * FROM sessoes WHERE ver='s' AND cat='&idcat' ORDER by nome;")

While Not menu.EOF%>

<TR>

<TD VALIGN="middle"><a href=sessoes.asp?item=<%= menu("id")>

<%=menu("nome")%></a>

</TD>

</TR>

<%

menu.MoveNext

Wend

'Fecha o menu

menu.Close

Set menu = Nothing%>

</table>

Mas não está listando! Eu tenho que colocar alguma linha de código para resgatar aquela variável do link antes de fazer o &idcat ?

O select não está pegando o variável que está no link!

Alguém pode me ajudar? Obrigado

Link para o comentário
Compartilhar em outros sites

20 respostass a esta questão

Posts Recomendados

  • 0

É uma loja virtual!

Existe um arquivo "categorias.asp" que pega as categorias existentes e lista

categorias.asp

<table border=1>

<%

Set cat = abredb.Execute("SELECT * FROM categorias ORDER by nome;")

While Not cat.EOF%>

<TR>

<TD VALIGN="middle"><a href=default.asp?idcat=<%= cat("idcat") %>>

<%= cat("nome") %></a>

</TD></TR>

<%

cat.MoveNext

Wend

cat.Close

Set cat = Nothing%>

</table>

default.asp

<table border=1>

<%

'Monta o menu de departamentos

Set menu = abredb.Execute("SELECT * FROM sessoes WHERE ver='s' AND cat='&idcat' ORDER by nome;")

While Not menu.EOF%>

<TR>

<TD VALIGN="middle"><a href=sessoes.asp?item=<%= menu("id")>

<%=menu("nome")%></a>

</TD>

</TR>

<%

menu.MoveNext

Wend

'Fecha o menu

menu.Close

Set menu = Nothing%>

</table>

Mas este select do arquivo default.asp não está pegando a variável "idcat" do link!

Tem alguma coisa a mais que deve ser feita?

Obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

tente ai colega...

<table border=1>

<%
'declara vartiavel
txtidcad = Request.QueryString("idcat")
'Monta o menu de departamentos
Set menu = abredb.Execute("SELECT * FROM sessoes WHERE ver='s' AND cat= "& txtidcad &" ORDER by nome;")
While Not menu.EOF%>

<TR>
<TD VALIGN="middle"><a href=sessoes.asp?item=<%= menu("id")>
<%=menu("nome")%></a>
</TD>
</TR>

<%
menu.MoveNext
Wend
'Fecha o menu
menu.Close
Set menu = Nothing%>

</table>

se der tipo de dados imcompativeis troque

cat= "& txtidcad &"

por

cat= '"& txtidcad &"'

ate mais

atenciosamente

mariofdf wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Isso!

Eu preciso pegar o valor id=1 e transportá-lo para o select que vai mostrar apenas as sub-categorias referentes àquela categoria principal!

mariofdf, tentei sua sugestão, mas continua não mostrando nada!

O select continua não conseguindo pegar o valor

Link para o comentário
Compartilhar em outros sites

  • 0

Você faz tipo assim:

<%
set RecSet = server.createobject("adodb.recordset")
RecSet.open "select colunas from tabela_bd where id = "&request.querystring("id")&"",conn
%>
<%=RecSet("colunas")%>
etc.........
<%Recset.close%>

Ta ai um exemplo.....Mas você tem que fazer o conecta, o instanciamento, etc...

Caso tenha mais alguma dúvida, é só chamar ai!!! wink.gif

[]'s

Victor

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Carlos Seiji

Ae tentai

<table border=1>

<%
'Monta o menu de departamentos
Set menu = abredb.Execute("SELECT * FROM sessoes WHERE ver='s' AND cat='"&Request.QueryString("idcat")&"' ORDER by nome;")
While Not menu.EOF%>

<TR>
<TD VALIGN="middle"><a href=sessoes.asp?item=<%= menu("id")>
<%=menu("nome")%></a>
</TD>
</TR>

<%
menu.MoveNext
Wend
'Fecha o menu
menu.Close
Set menu = Nothing%>

</table>

Link para o comentário
Compartilhar em outros sites

  • 0

<table border=1>

arquivo.asp

<%

'Monta o menu de departamentos
Set menu = abredb.Execute("SELECT * FROM sessoes WHERE ver='s' AND cat='&idcat' ORDER by nome;")
While Not menu.EOF%>

<TR>
<TD VALIGN="middle"><a href=sessoes.asp?item=<%= menu("id")>
<%=menu("nome")%></a>
</TD>
</TR>

<%
menu.MoveNext
Wend
'Fecha o menu
menu.Close
Set menu = Nothing%>

</table>
sessão.asp
Set menu = abredb.Execute("SELECT * FROM sessoes WHERE item = "&request.querystring("item")&""%>
<%=item("coluna")%>

<%
menu.MoveNext
Wend
'Fecha o menu
menu.Close
Set menu = Nothing%>

Tenta isso ae, se precisar de mais alguma coisa, poste!!!

[]'s

Victor

Link para o comentário
Compartilhar em outros sites

  • 0

Galera, eu usei o código "&Request.QueryString("idcat")&" conforme o Carlos Seiji sugeriu e funcionou corretamente, mas eu queria tirar só mais uma dúvida básica!

Como eu faço para que se o valor da variável idcat for nulo (?idcat=) aparecer algo como "especifique uma categoria" e se tiver um valor especificado (?idcat=1) aí sim aparecer a página normalmente e listar as subcategorias daquela categoria principal?

Agradeço qualquer ajuda!

Link para o comentário
Compartilhar em outros sites

  • 0

ué..

if Request.QueryString("idcat") = "" then

response.write "mensagem de erro.."

end if

isso?

Link para o comentário
Compartilhar em outros sites

  • 0

no lugar do response.write, você coloca

response.redirect "link.asp"

if Request.QueryString("idcat") = "" then

response.redirect "link.asp"

end if

certo?

Link para o comentário
Compartilhar em outros sites

  • 0

Pessoal, funcionou tudo ok, mas o valor da variável idcat está se perdendo quando eu clico no link para ver os produtos das subcategorias!

O menu tenta buscar no link aquele valor idcat=1, mas não está conseguindo porque ele simplesmente some depois que eu clico nos próximos links!

Para solucionar este caso, vou ter que colocar este valor em todos os links da página! Tentei das seguintes formas:

<a href="sessoes.asp?item=<%= menu("id") %>&idcat=<% Request.QueryString("idcat") %>">

<a href="sessoes.asp?item=<%= menu("id") %>&idcat=<% "&Request.QueryString("idcat")&" %>">

<a href="sessoes.asp?item=<%= menu("id") %>&idcat=<% &Request.QueryString("idcat")& %>">

Mas nenhuma conseguiu puxar o valor do link!

Neste caso o código tem que ser diferente?

Link para o comentário
Compartilhar em outros sites

  • 0

coloque assim:

<%= Request.QueryString("idcat") %>">

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Carlos Seiji

ae você esqueceu de colocar o = depois da % e assim ele não escrevia na pagina.

pois "%=" tem o valor do Response.Write

<a href="sessoes.asp?item=<%= menu("id") %>&idcat=<%= Request.QueryString("idcat") %>">

<a href="sessoes.asp?item=<%= menu("id") %>&idcat=<%= Request.QueryString("idcat") %>">

<a href="sessoes.asp?item=<%= menu("id") %>&idcat=<%= Request.QueryString("idcat") %>">

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...