Ir para conteúdo

POWERED BY:

Arquivado

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

Espanhol

Sistema de busca

Recommended Posts

Galera estou com um probleminha. QUando digito alguma palavra no sistema de busca, retorna sempre dizendo que não encontrou nenhum resultado, sendo que há registros com a palavra solicitada. Fiz um resumo no code, pra facilitar. Um abraço e valeu por quem puder ajudar. :)

 

<!--#include file="conectar.asp"--><body background="arquivos/bg.jpg" leftmargin="0" topmargin="15" marginwidth="0" marginheight="10" onLoad="MM_preloadImages('arquivos/ico_cont.gif','arquivos/ico_fav.gif','arquivos/ico_home.gif')"><div id="Layer1" style="position:absolute; left:145px; top:253px; width:573px; height:445px; z-index:1;">   <br>  <tr> 	  <td height="106"> 	  	<table width="407" border="0" align="center" cellpadding="0" cellspacing="0" class="texto">		  <tr> 					  <td colspan="3"><% ' Vamos recuperar a variável do formulário:nomebusca = Request.Form("nomebusca")'Abre o Recordset para todas as noticiasSet RS = Server.CreateObject( "ADODB.Recordset" )RS.ActiveConnection = dbRS.open "SELECT id, manchete, data, data_simples FROM Noticias WHERE manchete LIKE '%" & nomebusca & "%' ORDER BY data DESC LIMIT 13"%>		  <% IF NOT RS.EOF AND nomebusca <> "" THEN%>			<table width="204" border="0" cellspacing="0" cellpadding="0">			  <tr>				<td class="texto">Resultado(s) da busca:</td>			  </tr>			</table> <%WHILE NOT RS.EOF%>			<table width="581" height="40" border="0" cellpadding="0" cellspacing="0">		  <tr> 			<td height="5" colspan="2"><img src="noticias/arquivos/linha.gif" width="580" height="1"></td>		  </tr>		  <tr class="texto"> 			<td width="480"> <div align="left"><a href="vernoticia.asp?id=<%=rs("id")%>">	<%=rs("data_simples")%> - <%=rs("manchete")%></a>			</div></td>			<td width="101"><strong><a href="vernoticia.asp?id=<%=rs("id")%>">< saiba mais ></a></strong></td>		  </tr>		</table> 			<%RS.MoveNextWEND%></td>	</tr>	<tr> 		  <td height="44">			<%ELSE%>			<table width="524" border="0" align="center" cellpadding="0" cellspacing="0">			  <tr>				<td class="texto"><div align="center"><strong>A busca não 					encontrou nenhuma notícia relacionado ao ítem 					pesquisado.</strong></div></td>			  </tr>			</table><%END IF%>		</td>	</tr>  </table> <% RS.Close	  db.Close %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

você já mandou escrever o sql?

 

nomebusca = Request.Form("nomebusca")response.write("SELECT id, manchete, data, data_simples FROM Noticias WHERE manchete LIKE '%" & nomebusca & "%' ORDER BY data DESC LIMIT 13")
Seu banco de dados é mysql?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Continua no mesmo esquema.

 

 

Fiz uma alteração e ficou assim:

 

<% IF NOT RS.EOF AND nomebusca <> "" THENresponse.write("SELECT id, manchete, data, data_simples FROM Noticias WHERE manchete LIKE '%" & nomebusca & "%' ORDER BY data DESC LIMIT 13")%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

galera estou avisando que já consegui resolver o problema. Fiz uma "muqueca" aqui e no final ficou uma beleza... tá tudo funcionando certinho.QUem for o moderador do fórum, pode remover o tópico, pois consegui solucionar aqui o caso.Obrigado a quem leu e/ou respondeu minha dúvida.abrço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz um resumo aqui no code, pra mostrar realmente o que interessa.Minha solução para o problema foi a seguinte:

<!--#include file="conectar.asp"--><% ' Vamos recuperar a variável do formulário:nomebusca = Request.Form("nomebusca")'Abre o Recordset para todas as noticiasSet RS = Server.CreateObject( "ADODB.Recordset" )RS.ActiveConnection = dbRS.open "SELECT id, manchete, data, data_simples FROM Noticias WHERE manchete LIKE '%" & nomebusca & "%' ORDER BY data DESC LIMIT 13"%>		  <% IF NOT RS.EOF AND nomebusca <> "" THEN'response.write("SELECT id, manchete, data, data_simples FROM Noticias WHERE manchete LIKE '%" & nomebusca & "%' ORDER BY data DESC LIMIT 13")%>            <br><br>            <table width="570" border="0" cellspacing="0" cellpadding="0">              <tr>                <td class="texto"><strong>Resultado(s) da busca por: <em><%= nomebusca%></em></strong></td>              </tr>            </table> <br><%WHILE NOT RS.EOF%>            <table width="581" height="40" border="0" cellpadding="0" cellspacing="0">          <tr>             <td height="5" colspan="2"><img src="noticias/arquivos/linha.gif" width="580" height="1"></td>          </tr>          <tr class="texto">             <td width="480"> <div align="left"><a href="vernoticia.asp?id=<%=rs("id")%>">	<%=rs("data_simples")%> - <%=rs("manchete")%></a>			</div></td>            <td width="101"><strong><a href="vernoticia.asp?id=<%=rs("id")%>">< saiba mais ></a></strong></td>          </tr>        </table>             <%RS.MoveNextWEND%></td>    </tr>    <tr>           <td height="44">            <%ELSE%>            <table width="524" border="0" align="center" cellpadding="0" cellspacing="0">              <tr>                <td class="texto"><div align="center"><strong>A busca não                     encontrou nenhuma notícia relacionado ao ítem                     pesquisado.</strong></div></td>              </tr>            </table><%END IF%><% RS.Close  db.Close %>

O problema era que quando eu digitava algo em um input chamado nomebusca , sempre me retornava "nenhum registro encontrado" sendo que existia sim um registro com a tal palavra pesquisada. Foi aí que voltei todo o "filme" e fui olhando parte a parte. Então descobri que o nome do input tava como outro nome, e não como "nomebusca". Entao mudei o nome, e fui dá uma olhada no arquivo que efetua a action. Alterei tudo direitinho e ficou nota 10.DiCA: antes de ficar quebrando a cabeça, volte ao início do problema :)

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.