Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 3
Sexo: Masculino

Script de busca que tb exiba conteudo ao inves de resultados

16-05-2012 18:10

Tenho um campo de busca baseado apenas em javascript que faz a busca em uma nuvem de palavras contida no proprio javascript.
Até aí, funciona que é uma beleza e tudo bem. Porem o script tem uma parte que serve pra exibir o conteudo quando a busca
ainda nao foi efetuada, e quando a busca é efetuada, os resultados são mostrados no lugar do conteudo, e o conteudo em si some,
como é o que preciso.

Sendo o codigo esse:

<script language=""> function kw_list () { this.keywords = new Array (); this.num_words = 0; this.query = ""; this.original_query = ""; this.query_length = 0; this.possible_points = 0; this.multiple = points_title + points_keywords + points_description; this.get_words = get_query; this.no_query = no_query_found; } function get_query () { this.query = top.location.search.substring (top.location.search.indexOf ('=') + 1); while ((the_plus = (this.query.indexOf ("+", 0))) != -1) { this.query_length = this.query.length; this.query = this.query.substring (0, the_plus) + " " + this.query.substring (the_plus + 1); } this.original_query = unescape (this.query); this.query = this.original_query.toLowerCase (); this.query_length = this.query.length; if (this.query != "") { var query_pointer = 0; var end_word = 0; var at_end = 0; while ((this.num_words <= (max_keywords - 1)) && (! at_end)) { end_word = this.query.indexOf (" ", query_pointer); if (end_word == query_pointer) query_pointer++; else { if (end_word >= (this.query_length - 1)) at_end = 1; if (end_word != -1) this.keywords[this.num_words] = (this.query.substring (query_pointer, end_word)).toLowerCase (); else { this.keywords[this.num_words] = this.query.substring (query_pointer, this.query_length); at_end = 1; } this.num_words++; if (query_pointer != -1) query_pointer = end_word + 1; if (query_pointer > (this.query_length - 1)) at_end = 1; } } if (this.num_words == 0) return (0); else { this.possible_points = this.multiple * this.num_words; return (1); } } else return (0); } function no_query_found () { document.writeln ('<link rel="stylesheet" href="css/estilo-index.css">'); document.writeln ('<center><p>Conteudo do Site</p></center>'); } function entry (url, title, keywords, description) { this.url = url; this.title = title; this.keywords = keywords; this.description = description; this.points = 0; this.search_entry = find_keyword; this.print_entry = print_result; } function find_keyword (the_word) { var the_title = this.title.toLowerCase (); var the_keywords = this.keywords.toLowerCase (); var the_description = this.description.toLowerCase (); if ((the_title.indexOf (the_word)) != -1) this.points += points_title; if ((the_keywords.indexOf (the_word)) != -1) this.points += points_keywords; if ((the_description.indexOf (the_word)) != -1) this.points += points_description; } function print_result (possible_points) { document.writeln ('<A HREF="' + this.url + '" target="meio">' + this.title + '</A> - ' + this.description + '<br>'); } function no_entry_printed (the_query) { document.writeln ('<link rel="stylesheet" href="css.estilo-index.css">'); document.writeln ("<CENTER><P> Não há ocorrencia da palavra <U><B>" + the_query + "</B></U>.</P></CENTER>"); } function print_intro (the_query) { document.writeln ("<CENTER><P>Sua pesquisa “<U><B>" + the_query + "</B></U>“ retornou os seguintes resultados:</P></CENTER>"); } function begin_search () { var key_list = new kw_list; var entry_printed = 0; if (! key_list.get_words ()) key_list.no_query (); else { var counter = 0; var counter2 = 0; for (counter = 0; counter < entry_num; counter++) for (counter2 = 0; counter2 <= (key_list.num_words - 1); counter2++) the_entries[counter].search_entry (key_list.keywords[counter2]); for (counter = key_list.possible_points; counter > 0; counter--) { for (counter2 = 0; counter2 < entry_num; counter2++) { if (counter == the_entries[counter2].points) { if (entry_printed != 1) { entry_printed = 1; print_intro (key_list.original_query); } the_entries[counter2].print_entry (key_list.possible_points); } } } if (! entry_printed) no_entry_printed (key_list.original_query); } } the_entries = new Array (); //aqui vai as entradas para a pesquisa the_entries[0] = new entry ("http://www.thiagosurfreggae.hpg.com.br", "WebMaster Leandro Eber Ribeio", "leandro, ikki, autor, webmaster, dono, desenvolvedor, contatos, icq, contato, parcerias ", "Saiba um pouco sobre o WebMaster deste site, ICQ, E-mail, Contatos, Cargos, História da HP e muito mais.<br>"); the_entries[1] = new entry ("http://www.seu endereco.com.br/links.htm","Código do site Animanix","desenhos, ikki, IkkiNet, IkkiNET, SSJ_Clan, SSJ, afiliados, aliados, afilia-se","Conheça todos nossos afiliados com a HP.<br>"); the_entries[2] = new entry ("http://www.huashusa.com","Uma Nova Linha","desenhos, ikki, IkkiNet, IkkiNET, SSJ_Clan, SSJ, afiliados, aliados, amigos, afilia-se","Conheça todos nossos amigos afiliados com a HP.<br>"); the_entries[3] = new entry ("http://www.seu endereco.com.br/links.htm","Testando Nuvem","desenhos, ikki, IkkiNet, IkkiNET, SSJ_Clan, SSJ, afiliados, aliados, amigos, afilia-se","Conheça todos nossos amigos afiliados com a HP.<br>"); //abaixo vai o número de entradas existentes var entry_num = 4; //aumenta de acordo com as obcoes de busca no caso 2 ate agora var max_keywords = 20; //aumenta de acordo com as obcoes de busca no caso 2 ate agora var points_title = 4; //aumenta de acordo com as obcoes de busca no caso 2 ate agora var points_keywords = 4; //aumenta de acordo com as obcoes de busca no caso 2 ate agora var points_description = 4; begin_search (); </script> Os problemas são os seguintes: Se meu conteudo for extenso, vou ter que colar td esse conteudo extenso no lugar de "<p>Conteudo do Site</p>" em: function no_query_found () { document.writeln ('<link rel="stylesheet" href="css/estilo-index.css">'); document.writeln ('<center><p>Conteudo do Site</p></center>'); }

???

Segunda questão é que quando clico nos meus links de menu, a busca retorna como palavra procurada.
Ememplo, se clico em "contato" no menu, aparece resultado de busca dizendo que não encontrou resultado para a palavra "Contato".
Queria saber como vou ter q fazer para meus links abram tbm no mesmo campo onde aparece originalmente o conteudo quando nao há busca (que me serveria como home), campo esse que é tbm onde aparecem os resultados.
Enfim, se me entenderam, quero abrir meus links todos nesse campo, sem prejudicar o que aparece como home e td mais.

Desde já agradeço.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17662
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Script de busca que tb exiba conteudo ao inves de resultados

16-05-2012 18:41

Tem como postar a url onde está o script? Porque esse seu código ai não funciona.
0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 3
Sexo: Masculino

Script de busca que tb exiba conteudo ao inves de resultados

16-05-2012 19:02

http://qmemes.oficinaquitanda.com.br/index.html

Esse é o link para onde estou testando...o local onde aparece o conteudo, antes eu tava resolvendo com iframe, mas agora com esse script nao sei como vou poder fazer, pq agora mesmo nessa busca, acada busca atualiza td a pagina, sendo que era pra esse tipo de coisa acontecer so no local onde aparece os resultados...(como um iframe faria)...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17662
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Script de busca que tb exiba conteudo ao inves de resultados

16-05-2012 19:12

Não entendi sua dúvida. A busca está funcionando, o que quer fazer nela?
0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 3
Sexo: Masculino

Script de busca que tb exiba conteudo ao inves de resultados

16-05-2012 19:59

quando clica em algum botao no menu, ele nao abre no lugar do conteudo como deveria
o script contem uma parte que define que quando nao ocorrer busca, um campo com um determinado conteudo é exibido e que se a busca ocorrer esse conteudo é substituido pelo resultado da busca. Mas e o conteudo das outras paginas? Quando clico num botao do menu por exemplo, nao abre no lugar correto, so consigo fazer abrir se for numa outra janeja, nenhum target que eu use nos links faz o conteudo aparecer onde deveria, por isso cheguei a conclusao de que deveria ser feito alguma edição nessa parte do script para que quando nao ocorrer a busca, seja exibido o conteudo que qualquer outro linkar chamar e nao necessariamente apenas a parte de conteudo que ja esta dentro do script. Entendeu?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17662
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Script de busca que tb exiba conteudo ao inves de resultados

16-05-2012 20:03

Para carregar o conteúdo de um link dentro de uma div, você tem que usar jQuery, como mostrado abaixo

Abrir-link-em-uma-div-facil-com-jQuery_3_6304.html
0
A melhor hospedagem para o seu site HostGator!
 
Primeiras postagens
Primeiras postagens
Mensagens: 4
Sexo: Masculino

Script de busca que tb exiba conteudo ao inves de resultados

18-05-2012 17:29

seja exibido o conteudo que qualquer outro linkar chamar e nao necessariamente apenas a parte de conteudo que ja esta dentro do script.
Imagem
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17662
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Script de busca que tb exiba conteudo ao inves de resultados

19-05-2012 10:44

Então, o melhor é usar o jQuery.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado