Ir para conteúdo
Fórum Script Brasil

Aerial-man

Membros
  • Total de itens

    36
  • Registro em

  • Última visita

Tudo que Aerial-man postou

  1. Olha, usando as funções do DW eu não sei te dizer como isso pode ser feito, mas você mesmo pode fazer editando a sua página (php), posta lá no forum PHP que vai resolver isso rapidinho!!!
  2. Aerial-man

    Sistema De Busca

    Consegui resolver isso, o erro foi ter colocado o closedir dentro do if e do while, mas vi outro erro: Ele estava mostrando um pedaço de todos os arquivos, os que tem o termo procurado tá sendo mostrado legal só que os outros aparecem sem ter a palavra pesquisada, sulucionei colocando uma condição para mostrar apenas quando tiver o termo! <?php $descricao = $_GET['descricao']; function SDClearHTMLfromText($texto) { $texto=trim($texto); // tira os espaos em branco no incio e fim do texto $nrotagshtml=(substr_count($texto,'<') * 2); // conta quantas vezez aparece no texto a string < for ($hy=0;$hy<=$nrotagshtml;$hy++) { $posabrehtml=strpos($texto,'<'); // tag que inicia um html $posfechahtml=(strpos(substr($texto,$posabrehtml),'>')+1); // tag que fecha um html $retirar=(substr($texto,$posabrehtml,$posfechahtml)); // sentena html a retirar do texto if (strlen($retirar)>=2) // s entra se foi encontrado no mnimo 2 caracteres a retirar { $retirados.=('Ini:'.$posabrehtml."\nFin: ".$posfechahtml."\n".$retirar."\n*************************\n"); $texto=(str_replace($retirar,'',$texto)); // texto recebe o que tinha em texto menos a tag retirada(substituida por nada) } } return($texto); } $dir = "busca"; $abredir = opendir($dir); while ($arqs = readdir($abredir)) { if ($arqs != "." && $arqs != ".." && is_file($arqs) && ereg(".htm", $arqs)) { $abre = fopen($arqs,"r"); $le = (fread($abre,filesize($arqs))); $TextoLimpo = SDClearHTMLfromText($le); $num_car = strlen($descricao); $pesq = strpos($TextoLimpo,$descricao); if ($pesq == FALSE) {} else { $antes = $pesq - 100; $depois = $pesq + $num_car + 100; $parcial = substr($TextoLimpo,$antes,$depois); $desc_style = "<b>$descricao</b>"; $final = ereg_replace($descricao,$desc_style,$parcial); echo "$final<br><br>"; } } } closedir($abredir); ?> ´ agora é só fazer algumas mudanças para ficar com uma aparência melhor!! muito obrigado heltonritter!!!!!! :D
  3. Aerial-man

    Sistema De Busca

    segui o raciocínio e deu isso: <?php $descricao = $_GET['descricao']; function SDClearHTMLfromText($texto) { $texto=trim($texto); // tira os espaços em branco no início e fim do texto $nrotagshtml=(substr_count($texto,'<') * 2); // conta quantas vezez aparece no texto a string < for ($hy=0;$hy<=$nrotagshtml;$hy++) { $posabrehtml=strpos($texto,'<'); // tag que inicia um html $posfechahtml=(strpos(substr($texto,$posabrehtml),'>')+1); // tag que fecha um html $retirar=(substr($texto,$posabrehtml,$posfechahtml)); // sentença html a retirar do texto if (strlen($retirar)>=2) // só entra se foi encontrado no mínimo 2 caracteres a retirar { $retirados.=('Ini:'.$posabrehtml."\nFin: ".$posfechahtml."\n".$retirar."\n*************************\n"); $texto=(str_replace($retirar,'',$texto)); // texto recebe o que tinha em texto menos a tag retirada(substituida por nada) } } return($texto); } $dir = "busca"; $abredir = opendir($dir); while ($arqs = readdir($abredir)) { if ($arqs != "." && $arqs != ".." && is_file($arqs) && ereg(".htm", $arqs)) { $abre = fopen($arqs,"r"); $le = (fread($abre,filesize($arqs))); $TextoLimpo = SDClearHTMLfromText($le); $num_car = strlen($descricao); $pesq = strpos($TextoLimpo,$descricao); $antes = $pesq - 100; $depois = $pesq + $num_car + 100; $parcial = substr($TextoLimpo,$antes,$depois); $desc_style = "<b>$descricao</b>"; $final = ereg_replace($descricao,$desc_style,$parcial); echo "$final<br><br>"; closedir($abredir); } } ?> mas quando boto para pesquisar algo não retorna nenhum resultado nem mostra nenhum erro, simplesmente a tela fica em branco, o que está errado???
  4. Aerial-man

    Sistema De Busca

    valeu pela ajuda, serviu bastante eram duas dúvidas que eu tinha, uma você já respondeu e a outra é como fazer para mostrar um pedaço do texto que vem antes e depois do termo procurado????
  5. Aerial-man

    Sistema De Busca

    Cara gostei muito da sua resposta, é justamente isso que eu quero: a lógica de fazer, as funções da pra desenrolar, mas o que pega quando se está aprendendo uma liguagem é a lógica, valeu! é que boa parte do site contém páginas estáticas (html) dai eu achei viável essa busca diretamente no arquivo, quanto a essa lógica que você passou eu vou testar aqui, a maioria das funções que ela usa da pra fazer legal!!! também vou ler os links que você passou para ter mais noção, qualquer coisa eu retorno!! valeu pela ajuda!
  6. Aerial-man

    Sistema De Busca

    Olá pessoal, estou aprendendo a linguagem php e construindo um site, mas surgiu um problema, quero colocar um sistema de busca, que procure em todos os arquivos do meu site e tal, sei que existem inumeros scripts prontos mas por ser iniciante e gostar muito do php queria a ajuda de você para construir esse sistema, assim seria melhor! e também ficaria no forum como se fazer porque até agora não encontrei nenhum tutorial a respeito em lugar nenhum, os que tem são buscas em banco de dados MySQL!!
  7. rgarbin brigadão pela ajuda, mas resolvi meu caso usando outro código que achei muito interessante e acho justo divulgar pra galera aqui. link do código valeu!! :D
  8. E também, peço desculpas porque o termo que eu queria saber o valor que ele assumia seria esse java script:ajaxpage('yyyy.php?termo=''+this.form.termo.value+''&conteudo''+this.form.cont.value''') THIS.FORM.CONT.VALUE já que eu só quero enviar o valor do campo TERMO. Qual a função que ele exerce?
  9. bom estou usando o código que você passou da seginte forma java script:ajaxpage('yyyy.php?termo=''+this.form.termo.value+''&conteudo''+this.form.cont.value') mas não entendi o seguinte a função é composta de java script:ajaxpage('URL_PARA_ABRIR','LOCAL_ONDE_ABRIR') o local onde abrirá é CONTEUDO e na URL é que está o problema, porque ela seria assim yyyy.php?termo=VALOR_DO_CAMPO_TERMO e no código este +this.form.VALOR_DO_CAMPO_CONTEUDO.value estaria tomando que valor?
  10. rgarbin coloquei desse jeito mas não pegou cara, quando clico no botão para submeter o formulário, não faz nada, nenhuma ação! o que poderia ser, teria que criar outra função em javascript para isso????
  11. Olá galera! Sou iniciante e gostaria da ajuda de vocês no seguinte: tenho o arquivo xxxx.php onde existe a função em javascript para abrir uma página numa div <head> <script type="text/javascript"> var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no) var loadedobjects="" var rootdomain="http://"+window.location.hostname function ajaxpage(url, containerid){ var page_request = false if (window.XMLHttpRequest) // if Mozilla, Safari etc page_request = new XMLHttpRequest() else if (window.ActiveXObject){ // if IE try { page_request = new ActiveXObject("Msxml2.XMLHTTP") } catch (e){ try{ page_request = new ActiveXObject("Microsoft.XMLHTTP") } catch (e){} } } else return false page_request.onreadystatechange=function(){ loadpage(page_request, containerid) } if (bustcachevar) //if bust caching of external page var bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime() page_request.open('GET', url+bustcacheparameter, true) page_request.send(null) } function loadpage(page_request, containerid){ if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1)) var texto = page_request.responseText; texto = texto.replace(/\+/g," "); texto = unescape(texto); document.getElementById(containerid).innerHTML = texto; } </script> </head> <form action="java script:ajaxpage('yyyy.php?termo=VALOR_DO_CAMPO_DE_TEXTO', 'conteudo')" method="post" name="busca"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td align="right"><label> <input name="query" type="text" id="termo" /> </label></td> <td align="center"><label> <input type="submit" name="Submit" value="OK" /> </label></td> </tr> </table> </form> <div id="conteudo"> aqui é que abrirá a nova página </div> o que eu quero é que ele envie o formulário de modo que coloque o valor do campo de texto no lugar em que eu destaquei no código. ------------> form action="java script:ajaxpage('yyyy.php?termo=VALOR_DO_CAMPO_DE_TEXTO', 'conteudo')". Decide postar aqui porque acho que vocês dão a maior atenção e ajuda necessária!!!! :) P.S. O termo javascript está junto no código original, porem quando postei aqui ele separou!
×
×
  • Criar Novo...