Olá pessoal !
Neste artigo, iremos ver como montar
um sitema de busca interagindo Flash MX com ASP.
A programação é bem simples,
confiram !!!
Veja abaixo, o funcionamento do sitema.
- Digite "imasters" e clique
no botão "ok"....
1- Vamos começar montando o nosso lay-out (nesse exemplo estarei usando um filme 390X260 px), adicione uma caixa de texto com o nome "busca", crie também um botão "OK". Feito isso, insira uma nova camada na "Timeline" chamada "carrega_filmes".
Nesta camada você irá criar um "MovieClip" em branco e instacie ele como "carrega", coloque-o na posição "x=0" e "y=0".
É nele que iremos abrir o outro filme que vamos criar mais a frente onde irá retornar o resultado da nossa busca.
2- No botão "OK" coloque o seguinte ação:
on (release,
keyPress "
// Nesta linha estamos passando
o valor da variável para o outro filme
_root.carrega.busca=busca;
// Aqui nós estamos
carregando o nosso filme que ainda iremos criar
no MovieClip ("Carrega").
loadMovie("result.swf",
"_root.carrega");
}
3- Crie um novo filme com o nome de "result.fla" e crie três camadas, veja figura:

- Camada "carregando", iremos colocar um pequeno MC que irá indicar que está fazendo a pesquisa.
- Camada "scripts", onde vai estar todos os códigos de nossa busca.
- Camada "lay-out", iremos colocar a caixa de texto onde irá aperecer o resultado da busca e colocaremos também uma barra de rolagem.
- Camada "background", fica a seu gosto.
4- Tendo feito isso, agora iremos editar as camadas:
Coloque frames nas quatro camadas até o frame 8, menos a camada "carregando" que irá ter frames até o frame 5.
5- Agora faça o MovieClip com apenas uma animação piscando ou como você queira, informando que está pesquisando. Veja o exemplo abaixo:
6- Agora vamos trabalhar com a camada "scripts" inserindo as seguintes ações:
• 1º frame
// Nesta linha estaremos certificando que o nome
digitado no campo principal da busca foi passado
com certeza.
busca=_parent.busca;
// Abaixo estaremos carregando
o arquivo ASP que fará a busca.
loadVariables("busca.asp",
"_root.carrega", "POST");
• 2º frame
// Nesse script estamos recebendo
a informação passada pelo código
ASP
if (success ne "")
{
// Se retornar a mensagem
"False" é porque não foi
encontrado no banco a pesquisa solicitada.
if (success eq
"False") {
gotoAndStop(7);
// Se retornar a mensagem
"True" é porque foi encontrado,
e os resultados irão para a tela.
} else if (success eq "True")
{
gotoAndStop(6);
// Se retornar a mensagem
"Nada" é porque não foi
digitado nehum parâmentro para a busca.
} else if
(success eq "Nada") {
gotoAndStop(8);
}
}
• 3º e 4º
frame
Deixe em branco.
• 5º frame
// Aqui ele irá retornar para o 2º frame
para certificar-se do resultado.
gotoAndPlay(2);
• 6º frame
// Aqui ele irá parar o filme, mostrando
o resultado da busca
stop();
// Abaixo estamos limpando
o campo busca do nosso filme , estando pronto para
efetuar uma nova busca.
_parent.busca = "";
// Script usado para
aceitar HTML na caixa de texto, sem ter nenhum defeito
em sua fonte.
system.useCodepage = true;
• 7º e 8º
frame
// Aqui ele irá
parar o filme, mostrando o resultado da busca.
stop();
// Abaixo estamos limpando
o campo busca do nosso filme , estando pronto para
efetuar uma nova busca.
_parent.busca = "";
Abaixo estarei mostrando o nosso
código ASP de nossa página "busca.asp",
não irei explicar passo-a-passo do código
pois não é o nosso objetivo aqui.
--> Início do código
<--
<%@Language="VBScript"%>
<%
Option Explicit
Dim oRS, oConn, strSQL, busca
Dim results
Set oConn =
Server.CreateObject("ADODB.Connection")
Set oRS = Server.CreateObject("ADODB.Recordset")
oConn.Open
"DRIVER={Microsoft Access Driver (*.mdb)};DBQ="
& Server.MapPath("busca.mdb")
Busca= Request("Busca")
IF Busca = "" Then
Response.Write "success=Nada"
Response.End
Else
strSQL = "SELECT * FROM busca WHERE keywords
LIKE '%"& Busca &"%'"
END IF
oRS.Open strSQL, oConn, 2, 3
If oRS.EOF
Then
Response.Write "success=False"
Else
Response.Write "success=True&results="
Do While Not oRS.EOF
results = results & "Título:
" & "" & "
" & oRS("titulos") & vbCr
& ""
results = results & "Descrição:
" & "" & oRS("descricao")
& vbCr
results = results & "Caminho
da Página: " & ""
& "" &
oRS ("caminho") & vbCr & vbCr
& ""
oRS.MoveNext
Loop
End If
oRS.Close
Set oRS = Nothing
oConn.Close
Set oConn = Nothing
Response.Write
Server.URLEncode(results)
Response.expires = now
%>
--> Fim do código
<--
7- Agora estamos quase chegando ao fim, na camada "lay-out" iremos inserir as seguintes ações:
• 1º frame
Crie uma caixa "Dynamic Text (Texto Dinâmico)"
com o nome busca, pois é através desta
caixa que passaremos o valor digitado.
• 2º ao 5º
frame
Deixe em branco.
• 6º frame
Crie outra "Dynamic Text (Texto Dinâmico)"
com o nome "results", nesta caixa que
o script em ASP irá retornar o resultado
da busca.
ps. Caso os resultados de seu sitema de busca seja muito extenso, adicione uma barra de rolagem.
• 7º frame
Coloque uma mensagem informando que sua busca não
foi realizada com sucesso, exemplo:
" Não foi
encontrado nenhuma ocorrência para sua busca."
• 8º frame
Coloque uma mensagem informando que "nada"
foi digitado para efetuar a busca, exemplo:
" Você
precisa digitar algo para realizar a busca."
8- Na camada "background", criei uma imagem onde o resultado da busca ficará em cima. Veja figura abaixo como ficou o nosso filme "result.fla" e a "timeline".


9- Para finalizarmos, irei mostrar a estrutura do banco de dados utilizando em nosso exemplo.

ps. No campo "keywords" você tem que cadastrar todos os tipos de palavras possíveis para a busca, pois é através desse campo que o script em ASP irá buscar o registro.
Clique aqui para fazer o download dos arquivos
Espero que tenham gostado !
Qualquer dúvida basta entrar em contato comigo, ou postar uma mensagem no Fórum.
Abraços...
Matheus Bourg
como faço um scroll na ágina de pesquisa?
Alexandre de Paula
Muito legal esse codigo, mas so ta faltando o link na busca
Sidnei
Mto bacana Tiago, mas gostaria de saber o seguinte: Ao invés abrir o movie com os resultados como faço pra aparaecer uma pagina em html ou asp com os resultados dessa busca? Resumindo eu queria mesmo e estou precisando somente do campo de busca e o botao ok em flash. Gostaria mto de obter essa resposta.
Att,
Nilton Mendes.
Eduardo Cardillo
Mas gostaria de saber como ficaria se eu tivesse um campo com uma imagem, o que mudaria? O asp ou o bd?
2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.