Estou colocando o arquivo no endereço www.dazzleweb.com.br/busca.rar que contém um .fla(arquivo editável), .swf(arquivo publicado), .xml(arquivo para servir como BD), e .exe(executável, roda sem plugin).
Meu problema é que não consigo fazer essa busca que está no link funcionar corretamente. Por incrível que pareça, só o executável que está funcionando. Parece que quando executa o .swf por exemplo, o flash não consegue achar o arquivo .xml e, assim, exibe a tela de texto não encontrado. De qualquer forma, não consigo editar o .fla e fazê-lo funcionar corretamente.. Quem puder da uma jauda...
Os códigos principais para efetuar a busca são: (estão no 1º frame, como pode ser visto caso baixem o arquivo)
stop();
fscommand("allowscale", "false");
var dbArray = new Array();
var dbXML = new XML();
dbXML.onLoad = function()
{
var title, description, link, keywords;
var ndRoot = this.firstChild;
for(var i = 0; i < ndRoot.childNodes.length; i++)
{
if(ndRoot.childNodes[i].nodeName != null)
{
title = ndRoot.childNodes[i].attributes.title;
description = ndRoot.childNodes[i].attributes.description;
for(var j = 0; j < ndRoot.childNodes[i].childNodes.length; j++)
{
if(ndRoot.childNodes[i].childNodes[j].nodeName == "link")
{
link = ndRoot.childNodes[i].childNodes[j].firstChild.nodeValue;
}
else if(ndRoot.childNodes[i].childNodes[j].nodeName == "keywords")
{
keywords = ndRoot.childNodes[i].childNodes[j].firstChild.nodeValue.split("|");
}
}
dbArray.push(new _root.record(title, description, keywords, link));
}
}
}
function record(title, description, keywords, link)
{
this.title = title
this.description = description;
this.keywords = keywords;
this.link = link;
}
function search(string)
{
var nResults = 0;
for(var i = 0; i < dbArray.length; i++)
{
for(j = 0; j < dbArray[i].keywords.length; j++)
{
if (dbArray[i].keywords[j].toLowerCase() == string)
{
found = true; nResults++;
break;
}
}
if(found)
{
results += "<b><a href=\""+ dbArray[i].link + "\"><u>" + dbArray[i].title + "</u></a></b>" + "<br>";
results += dbArray[i].description + "<br><br>";
found = false;
}
}
if(nResults == 0)
{
results = "<b>Nenhum resultado com estes critérios. Faça outra pesquisa...</b>";
}
gotoAndStop(10);
}
dbXML.load("database.xml");
Selection.setFocus("word");Quem precisar que comente alguma linha do código para entender melhor, da um toque..
E por favor, quem souber arrumar essa busca em xml eu agradeceria muito...
O arquivo segue no link para quem precisar também.. Clique Aqui para baixar o arquivo e ajude a consertá-lo por gentileza.. hehehe
Muito obrigado e até..
Thiago <-> SmarThi










