Ir para conteúdo

POWERED BY:

Arquivado

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

Melanie

Problema com tabelas lado a lado

Recommended Posts

[Resolvido] PROBLEMA COM TABELAS LADO A LADO

 

Tenho uma pagina EMPESTAR: possui um formulário de busca de titulo, ao clicar e redirecionado a página RESP_EMPRESTAR.

 

O problema desta é quando há nomes iguais

Ex.: A era do gelo I

A era do gelo II

 

Ao invés de colocar as informações obtidas lado a lado, o resultado final é uma debaixo da outra.

 

Segue abaixo o código para fica mais claro.

 

<div id="busca" style="position:absolute; left:248px; top:245px; width:526px; height:315px; background-color: #FFFFFF; layer-background-color: #FFFFFF; border: 1px none #000000;">

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

<table width="150" height="150">

<% titulo=request.form("titulo")
set rs= server.createobject("ADODB.Recordset")
sql="select * from Acervo where titulo like"&"'%"&titulo&"%'" 
rs.open sql, Controle, 1, 3
while not rs.eof%>
<tr>
<td> 
<table width="100">
<tr>
<td><%=rs("titulo")%></td>
<td> </td>
</tr>
<tr>
<td rowspan="2"><img src="../produtos/<%=rs("foto")%>" width="133" height="192"></td>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table></td>
<td>
<table width="100">
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td rowspan="2"></td>
<td></td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table></td>
</tr>
<% rs.movenext
wend
rs.close
Controle.close%>
</table>
</div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Retira o % da comparação.

Compartilhar este post


Link para o post
Compartilhar em outros sites
sql="select * from Acervo where titulo like '" & titulo & "' "

Compartilhar este post


Link para o post
Compartilhar em outros sites

Retirando % não mostrar mais nada

 

A pagina antes dela é um formulário:

<table width="401" height="102">
         <tr>
           <td><form name="buscar" method="post" action="resp_emprestar.asp">
            Título: <input type="text" name="titulo">
               <br>
               <input type="submit" value="Buscar">
             </form>            </td>
         </tr>
       </table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Logo abaixo do sql coloca response.write sql e posta o que apareceu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<% titulo=request.form("titulo")

set rs= server.createobject("ADODB.Recordset")

sql="select * from Acervo where titulo like '" & titulo & "' "

response.write sql

rs.open sql, Controle, 1, 3

while not rs.eof%>

quando peço para buscar : a era do gelo dá o erro de select * from Acervo where titulo like 'era'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas qual a mensagme de erro?

 

Imagino que a mensagem de erro já mudou.

 

Provavelmente o erro agora é porque não está localizando registros, vido você está buscando por ERA e não ter somente ERA cadastrado.

 

Acima do while not rs.eof, coloque if not rs.eof then e não esqueça de colocar o end if abaixo do wend.

 

Veja se continuará com erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade o que queria, era quando encontrar dois resultados a informação é dada a primeira tabela e a outra ao lado dela.

Mas o que acontece, o resultado fica debaixo da primeira tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora sim entendi. Antes havia entendido que você queria pegar um resultado apenas.

 

Vai aí um exemplo de como fazer.

<%
set rs= server.createobject("ADODB.Recordset")
sql = "select * from Acervo where titulo like '%"&titulo&"%'"
rs.open sql, Controle, 1, 3

if not rs.eof then
%>
<table width="150" height="150">
	<tr>
<%
	while not rs.eof
%>
		<td><%=rs("titulo")%></td>
<%
		rs.movenext
		if not rs.eof then
%>
		<td><%=rs("titulo")%></td>
	</tr><tr>
<%
			rs.movenext
		end if
	wend
%>
	</tr>
</table>
<%
end if
rs.close
set rs = nothing
%>

Posta aí o resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código:

 

<div id="busca" style="position:absolute; left:248px; top:245px; width:526px; height:315px; background-color: #FFFFFF; layer-background-color: #FFFFFF; border: 1px none #000000;">

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

<% titulo=request.form("titulo")
set rs= server.createobject("ADODB.Recordset")
sql="select * from Acervo where titulo like"&"'%"&titulo&"%'" 
rs.open sql, Controle, 1, 3
if not rs.eof then
%>

<table width="150" height="150">
<tr>
<%while not rs.eof%>
<td> 
<table width="100">
<tr>
<td><%=rs("titulo")%></td>
<td> </td>
</tr>
<tr>
<td rowspan="2"><img src="../produtos/<%=rs("foto")%>" width="133" height="192"></td>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<%
rs.movenext
end if
wend
%>
</table></td>
<td>
<table width="100">
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td rowspan="2"></td>
<td></td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table></td>
</tr>
<% end if
rs.close
set rs = nothing
%>
</table>
</div>

E o Erro:

Erro de compilação do Microsoft VBScript (0x800A0400)

Instrução esperada

/catalogo/p_produtos/resp_emprestar.asp, line 74

end if

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você fechou o IF dentro do WHILE. Por que?

 

end if

wend

Compartilhar este post


Link para o post
Compartilhar em outros sites

Repetiu não... meu código tem um IF dentro do WHILE e tem 2 MOVENEXT...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele editou no primeiro post

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.