Ir para conteúdo

POWERED BY:

Arquivado

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

Arthur Webdesigner

Problema ao chamar registro 2 vezes

Recommended Posts

Olá, tenho um código que exibe um registro aleatório em um banco de dados, no caso, são registros de livros, e ele escolhe os registros que possuem a campo exibe com valor True e exibe aleatoriamente. Até aí tudo bem.

O problema é que preciso chamar duas vezes o campo codigo para poder validar o link para a página de descrição do livro. Porém na primeira vez que exibo o valor do campo ele funciona, mas na segunda vez que chamo, ele não exibe nada no link e a url do link fica livro.asp?codigo=

O código é este:

	Const adCmdText = &H0001
	Dim query, conn
		query = "SELECT codigo, titulo, autor, imagem, comprar, exibe FROM livros WHERE exibe = True"
		conn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
				Server.MapPath("livros.mdb")
		
	Dim rs
		Set rs = Server.CreateObject("ADODB.Recordset")
		rs.Open query, conn, 3, , adCmdText

	Dim intRnd
		Randomize Timer
		intRnd = (Int(RND * rs.RecordCount))

		rs.Move intRnd

		Response.Write "<a href=""livro.asp?codigo=" & rs("codigo") & """><br>"
		Response.Write "<img src=""" & rs("imagem") & ".jpg"" width=""100"" border=""0"" /></a><br>"
		Response.Write "<b>" & rs("titulo") & "</b><br>"
		Response.Write "<i>" & rs("autor") & "</i><br>"
		Response.Write "<a href=""livro.asp?codigo=""" & rs("codigo") & """>Descrição</a><br>"
		Response.Write "<a href=""" & rs("comprar") & """ target=""_blank"">Comprar</a>"

		rs.Close
		Set rs = Nothing
Tentei criar uma variável para atribuir o valor do campo e depois exibí-la e o erro persiste. Tentei também criar duas variáveis para ver se funcionava, mas nada.

Será que alguém sabe o que devo fazer?

Muito obrigado, valeu abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode armazenar em uma session

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele gera algum numero de erro ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

não, no primeiro link ele exibe normal livro.asp?codigo=34 já no segundo link ele exibe livro.asp?codigo=

fiz um teste com outro campo, repeti duas vezes e foi normal, será porque o campo codigo é auto-numeração e chave primária?

 

tentei também criar uma função para imprimir o registro, mas o erro continua...

 

ninguém tem idéia do que seja? ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

E agora ?

<%
Const adCmdText = &H0001
Dim query, conn
query = "SELECT codigo, titulo, autor, imagem, comprar, exibe FROM livros WHERE exibe = True"
conn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
Server.MapPath("livros.mdb")

Dim rs
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open query, conn, 3, , adCmdText

Dim intRnd
Randomize Timer
intRnd = (Int(RND * rs.RecordCount))

rs.Move intRnd

Response.Write "<a href=""livro.asp?codigo=" & rs("codigo") & """><br>"
Response.Write "<img src=""" & rs("imagem") & ".jpg"" width=""100"" border=""0"" /></a><br>"
Response.Write "<b>" & rs("titulo") & "</b><br>"
Response.Write "<i>" & rs("autor") & "</i><br>"
Response.Write "<a href=""livro.asp?codigo=" & rs("codigo") & """>Descrição</a><br>"
Response.Write "<a href=""" & rs("comprar") & """ target=""_blank"">Comprar</a>"

rs.Close
Set rs = Nothing

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente um

while not rs.eof
..
...
....
 rs.movenext
  	wend
	set rs=nothing

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente um

while not rs.eof
..
...
....
 rs.movenext
  	wend
	set rs=nothing
tentei com o while, mas o erro continua, sempre aparecendo na primeira chamada, e na segunda não aparece nada

mas valeu xanburzum, valeu mesmo, vou tentar outro código de registro aleatório pra ver se consigo o que preciso, depois se tiver alguma dúvida posto aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

se é que entendi armazene o valor em uma variável e depois use quantas vezes quiser

 

o uso de session só será necessário se for usar o código obtido nesta pagina em varias paginas

 

codigo = rsDestaque("codigo")

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.