USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  ASP - Active Server Page    (Miscelâneas)

Título da Dica:  Criando um sistema de busca.
Postada em 28/8/2003 por DTLucchesi            
Para criar um sistema de busca você precisa antes de tudo planejar e criar um banco de dados. Neste sistema usaremos um banco de dados Access, com apenas uma tabela e cinco colunas.



1° Passo: O banco de dados
Crie um banco de dados chamado banco.mdb, feito isso, crie uma tabela chamada websites com as colunas: id_site, titulo, descricao e url, de acordo com a imagem ao lado.
O campo id_site, deve ser setado como chave primária. Para fazer isso clique com o botão direito sobre a coluna e selecione a linha chave primária.

ID_SITE - AUTONUMERAÇÃO
TITULO - TEXTO
DESCRICAO - MEMORANDO
URL - MEMORANDO



Pronto, a base de dados já foi criada. Agora vamos mexer com a programação, antes, veremos o que o site precisará.
- Página em que o usuário digite o que deseja procurar;
- A página com os resultados;
- Página de cadastro de novos sites;

2° Passo: A página de procura
Está é a parte mais fácil. Apenas um arquivo .html com um campo de texto, um botão e um formulári, veja o código:

formulario.html
<html>
<head>
<title>BUSCA NINJA</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form name="form_busca" method="post" action="resultados.asp">
<p>
<IMG src="logotipo_ninja.jpg" width="272" height="87" border="0">
</p>
<p>
<input name="palavra" type="text" id="palavra">
<input type="submit" name="Submit" value="Buscar!">
</p>
</form>

</body>
</html>

3° Passo: A página de resultados
Aqui é que vai entrar a programação ASP. Explicarei linha por linha o código:

Crio uma conexão com o banco de dados usando ADO
set conexao = server.createobject("adodb.connection")
abrir = "DRIVER={Microsoft Access Driver (*.mdb)};"&"DBQ="&server.mappath("banco.mdb")
conexao.open abrir

Crio o recordset que procurará no banco de dados, registros com palavras semelhantes às digitadas na página formulario.html
set resultados = server.createobject("adodb.recordset")
ins_sql = "select * from websites where descricao like '%"&query_busca&"%'"
resultados.open ins_sql, conexao, 3

Defino a variável total_resultados, que no exemplo conta os registros encontrados
total_resultados = resultados.recordcount

Início do loop dos resultados, aqui é impresso na tela os resultados, junto ao html
<% do while not resultados.eof %>
>> <a href="<%=resultados("url")%>"><%=resultados("titulo")%></a><br>
<%=resultados("descricao")%><br>
<a href="reportar.asp?id_site=<%=resultados("id_site")%>"><font color="#666666" size="1">Reportar
erro no link</font></a><br>
<br>

Fecho a conexao e libero memória no servidor
<% resultados.movenext
loop
resultados.close
set resultados = nothing
%>
</font>

Código completo do arquivo resultados.asp
<title>BUSCA NINJA por <%=request.querystring("palavra")%></title><%
set conexao = server.createobject("adodb.connection")
abrir = "DRIVER={Microsoft Access Driver (*.mdb)};"&"DBQ="&server.mappath("banco.mdb")
conexao.open abrir
query_busca = request.querystring("palavra")

set resultados = server.createobject("adodb.recordset")
ins_sql = "select * from websites where descricao like '%"&query_busca&"%'"
resultados.open ins_sql, conexao, 3

total_resultados = resultados.recordcount
%> <font size="2" face="sans-serif"><font color="#333333" size="3">
<img src="logotipo_ninja.jpg" width="272" height="87" border="0">
<br>
Resultados da busca por <strong><%=query_busca%></strong></font><br>
Foram encontrados<strong> <%=total_resultados%> </strong>websites<br>
<br>
<br>
<% do while not resultados.eof %>
>> <a href="<%=resultados("url")%>"><%=resultados("titulo")%></a><br>
<%=resultados("descricao")%><br>
<a href="reportar.asp?id_site=<%=resultados("id_site")%>"><font color="#666666" size="1">Reportar
erro no link</font></a><br>
<br>
<% resultados.movenext
loop
resultados.close
set resultados = nothing
%>
</font>

Execute o código e você terá como resposta:



4° Passo: A página de cadastro
Esta é outra página simples. Apenas html!
veja o código do formulário abaixo:
cadastro.html
<form name="form_cad_ninja" method="post" action="cadastrar.asp">
<img src="logotipo_ninja.jpg" width="272" height="87"><br>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="10%"><font size="2" face="sans-serif">Titulo:</font></td>
<td width="90%"><font size="2" face="sans-serif">
<input type="text" name="titulo">
</font></td>
</tr>
<tr>
<td><font size="2" face="sans-serif">Url:</font></td>
<td><font size="2" face="sans-serif">
<input name="url" type="text" value="http://">
</font></td>
</tr>
<tr>
<td valign="top"><font size="2" face="sans-serif">Descric&atilde;o:</font></td>
<td><font size="2" face="sans-serif">
<textarea name="descricao"></textarea>
</font></td>
</tr>
<tr>
<td><font size="2" face="sans-serif">&nbsp;</font></td>
<td><font size="2" face="sans-serif">
<input type="submit" name="Submit" value="Cadastrar!">
</font></td>
</tr>
<tr>
<td><font size="2" face="sans-serif">&nbsp;</font></td>
<td><font size="2" face="sans-serif">&nbsp;</font></td>
</tr>
</table>
</form>

5° Passo: Cadastrando!
Está é a página que irá inserir o registro no banco de dados.
Veja o código:
<title>BUSCA NINJA por </title><%
set conexao = server.createobject("adodb.connection")
abrir = "DRIVER={Microsoft Access Driver (*.mdb)};"&"DBQ="&server.mappath("banco.mdb")
conexao.open abrir

set resultados = server.createobject("adodb.recordset")
ins_sql = "insert into websites (titulo, descricao, url) values ('"&request.form("titulo")&"','"&request.form("descricao")&"','"&request.form("url")&"')"
resultados.open ins_sql, conexao, 3
resultados.close
set resultados = nothing
%>

Registro inserido com sucesso!
</font>
 


CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página