Ir para conteúdo

POWERED BY:

Arquivado

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

daniel.

[Resolvido] Sistema de busca ASP

Recommended Posts

Olá pessoal, sou iniciante em asp e estou com um pequeno problema em um sistema de busca feito por mim para testes

 

segue o codigo

 

Default.asp

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>


<%
If NOT Session("logado") = true Then
Response.redirect("erro.asp")
Response.End
End If
%>

<form method="POST" action="resultado.asp">
  <p>Digite o que procurar</p>
  <p>
    <input type="text" name="user">
  </p>
  <p>
    <input type="submit" value="Buscar">
  </p>
</form>


resultado.asp
[code]
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>


<%
If NOT Session("logado") = true Then
Response.redirect("erro.asp")
Response.End
End If
%>

<%

'Declara variáveis
Dim cnConexao, rsBusca

'Cria instância ADO e abre conexão com o banco de dados
Set cnConexao = Server.CreateObject("ADODB.Connection")
cnConexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("bancodedados/banco.mdb")&";"

'Cria instância Recordset e faz a consulta na tabela tbClientes
Set rsBusca = Server.CreateObject("ADODB.RecordSet")
rsBusca.Open "SELECT * FROM users WHERE user LIKE '%"&Request.Form("user")&"'",cnConexao,3,3

'Verifica se foi encontrado algum registro
If rsBusca.EOF Then
Response.Write "Não foi encontrado nenhum registro!"
Else
'Lista os clientes se encontrados
While Not rsBusca.EOF
Response.Write rsBusca("user") & "<br>"
'Move para o próximo registro
rsBusca.MoveNext
Wend
End If
%>
o problema e que ele traz somente se eu colocar o nome do usuario certinho, se eu pesquisar somente a primeira letra ele nao traz nada, como que eu consigo pesquisar somente pelas letras?

obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual problema !?!?!?!

é gerado erro, qual numero e linha do erro...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acrescente % no final.

SELECT * FROM users WHERE user LIKE '%"&Request.Form("user")&"%'

Compartilhar este post


Link para o post
Compartilhar em outros sites

para pegara primeira letra você pode fazer assim

SELECT * FROM users WHERE usuario Like '" & letra & "%' ORDER BY usuario

 

lembre-se k você tb pode colocar para em cima as letra alfabeticas para o user clicar tb

 

A B C D E F G H I J K L M N O P Q R S T

Compartilhar este post


Link para o post
Compartilhar em outros sites

Correto o que o xan exemplificou. Da forma que citei ele buscaria pela letra em todas as partes da palavra e não só no inicio.

Compartilhar este post


Link para o post
Compartilhar em outros sites

precisa avaliar corretamente se é mmais vantagem buscar apenas a 1º letra ou todas qualquer parte da na palavra

depende da situcaun nos dois casos

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza,mano...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia, sei que estou meio atrasado hehe, mas gostaria de saber o seguinte. Eu to usando esse mesmo esquema numa consulta mas por exemplo. No banco de dados ta digitado:

 

NOME SOBRENOME1 SOBRENOME2

 

Quando eu vou pesquisar por exemplo: nome sobrenome 2 ele não acha nada.

 

O que eu poderia fazer para buscar.

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.