Ir para conteúdo
Fórum Script Brasil
  • 0

Busca Com Meta-tags


hsimberg

Pergunta

12 respostass a esta questão

Posts Recomendados

  • 0
Tá..eu li e até entendi...mas a busca como eu faco? o mesmo como em php?`

<form action='?'>

como eu faco para buscar as meta tags?

Muito orbigado

As páginas .htm que você vai abrir estão no mesmo local em que está o script PHP, ou será uma busca externa?

Link para o comentário
Compartilhar em outros sites

  • 0

Sim..bom, todas as paginas seriam php, é possivel?

E tera um arquivo serch.php que eu to colocando no topo de todas as paginas....ai quando faz a busca abre no search_results.php

os arquivos estao jogados na public, mas os artigos e noticias vou colocar numa pasta "arquivo" é possivel fazer busca dentro de pastas tb?

Muito obrigado

Hernandes

Link para o comentário
Compartilhar em outros sites

  • 0

Achei isso..

esse é o script de mostrar certo?

<?php
// Assumindo que as tags acima estão em www.example.com
$tags = get_meta_tags('http://www.example.com/');

// Veja que todas as chaves estão agora em minúsculas, e
// que agora o . foi substituido por _ na chave.
echo $tags['author'];      // name
echo $tags['keywords'];    // php documentation
echo $tags['description'];  // a php manual
echo $tags['geo_position']; // 49.33;-86.59
?> 

Mas e para fazer a busca?

E para colocar as keywords é simplesmente colocar nas phps?

Muito obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

todas as paginas seriam php, é possivel?

Sim, é possível! você só deve tomar muito cuidado porque, como o script abre arquivos locais, na hora de pegar o conteúdo as tags PHP dessas páginas não serão interpretadas. você teria que simular como se fossa uma requisição externa, ou limpar as tags manualmente.

é possivel fazer busca dentro de pastas tb?

Sim, tb é possível... você vai pegar arquivos que estão diretamente nessa pasta, ou em subpastas dela? Tipo, você indica uma pasta raiz e ele varre todos os arquivos e subpastas dentro dela... isso?

É possível fazer em ambos os casos... só que no 2o. será mais complexo o seu algorítimo da busca.

esse é o script de mostrar certo?

Esse exemplo tá pegando meta-tags de uma página externa do seu servidor... mas você poderia abrir um arquivo .php local, limpar as tags PHP, e passar o resultado como parâmetro pra essa função. Assim ela pega meta-tags, tb...

Mas e para fazer a busca?

E para colocar as keywords é simplesmente colocar nas phps?

Não entendi!

Link para o comentário
Compartilhar em outros sites

  • 0

Vamos ver...olha o que eu fiz:

Search.php

 <form action="search_results.php" method="post" name="tags" ><table width="9" border="0">
     <tr>
       <td width="31%">
                  <div align="left">
                    <input name="tags"
            onBlur="if(this.value=='')this.value='Search';" 
            style="BORDER-RIGHT: #764816 1px solid; BORDER-TOP: #764816 1px solid; FONT-SIZE: 10px; BACKGROUND: #fff6da; BORDER-LEFT: #764816 1px solid; BORDER-BOTTOM: #764816 1px solid; font-face: Trebuchet MS" 
            onFocus="if(this.value=='Search')this.value='';" 
            value=Search size="16">
                  </div></td>
          <td width="69%"><input name="search" type="image" value="Search" src="images/button_2.gif" align="middle" width="12" height="19" hspace="10"></td>
     </tr>
</table>  </form>    
Ta, ai ta passando a var $tags certo? que vai para um documento chamado serach_results.php que é esse:
<?php

$tags = get_meta_tags('http://www.nando.infinitehost.com.br/');

echo $tags['keywords'];   
?>
E nas paginas htm eu coloquei :
<meta name="keywords" content="busca">

E 'busca' é a palavra que eu to usando de teste para fazer pesquisas

Estou no caminho certo? huh.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Bom, mais ou menos... rolleyes.gif

Quando você manda a $tags pra página de resultado, você sobrescreve ela com a função get_meta_tags! Aí você perde o valor inicial dela... use $_POST['tags'] ao invés da global $tags pra recuperar o valor passado pelo campo do formulário. É melhor...

Outra coisa: se você usar get_meta_tags('http://www.nando.infinitehost.com.br/'), você vai pegar as meta-tags de 1 arquivo somente, que é o index.php (ou index.htm... não sei qual ele vai pegar no seu caso). Entende? você vai ter que varrer o diretório procurando arquivos das extensões que você deseja abrir... pra isso, vai precisar das funções:

opendir();

readdir();

closedir();

Dê uma estudada nelas pelo manual do PHP... serão bem úteis no seu caso.

Falou!

Link para o comentário
Compartilhar em outros sites

  • 0

<?php

$tags = get_meta_tags('http://www.nando.infinitehost.com.br/');

echo $tags['keywords'];   
?>
Onde eu colocaria $_POST['tags'] ? Até hj não entendi esse $_POST... E quanto ao codigo eu acho que eu entedi....o opendir, como o proprio nome diz vai abrindo as pastas que agente tem no nosso site, certo...mas ai não entendi....ele liberaria uma var que eu usaria para buscar? não entendi,,,,desculpa Obrigado
<?php
$dir = "/tmp/";

// Abre um diretorio conhecido, e faz a leitura de seu conteudo
if (is_dir($dir)) {
   if ($dh = opendir($dir)) {
       while (($file = readdir($dh)) !== false) {
           print "filename: $file : filetype: " . filetype($dir . $file) . "\n";
       }
       closedir($dh);
   }
}
?> 

Link para o comentário
Compartilhar em outros sites

  • 0

O $_POST é um array que já vem definido... a única coisa é que serão adicionados elementos a esse array caso a página receba informações de um formulário via método POST. Entendeu? Se você tinha um campo chamado "nome", na página seguinte à submissão do form terá uma variável chamada $_POST['nome'] com o valor do que foi digitado no campo.

Quanto às funções:

- O opendir() vai abrir um diretório para que você possa manuseá-lo. você associa o retorno dessa função a uma variável... essa variável é um "dir handle" (uma espécie de identificação para o diretório que você tá manuseando). você vai passá-la como parâmetro pras outras funções.

- No readdir(), você vai passar como parâmetro a variável $dir_handle (que você criou com o opendir, como falei acima). Essa função vai retornando o nome dos arquivos da pasta, conforme você chama ela... por isso que você usa ela dentro do while()... pois ela vai retornar o nome de um arquivo a cada passagem do laço.

- O closedir() é só pra fechar o diretório aberto pelo opendir().

Bom, agora você teria que pegar o nome de cada arquivo e abrir um por um pra ler o conteúdo. Assim você pode ver se as palavras buscadas existem naquele arquivo... se existirem, você exibe ele como resultado da busca.

Isso que você quer fazer é algo um tanto complexo... se quiser ver, eu criei uma classe que faz busca em arquivos locais... mais ou menos isso que você tá querendo fazer (só que busca no conetúdo, não só nas meta-tags). Se quiser dar uma olhada e estudar o código:

http://www.phpclasses.org/browse/package/2054.html

[]'s!

Link para o comentário
Compartilhar em outros sites

  • 0

Legal...to entendendo....mas parece beeem complicado....seria mais facil armazenar os dados no mysql? e fazer busca nele depois? eu pensei em armazenar em html pois seria mais facila busca! ohmy.gif

Bom..o que você acha? e quanto ao download para fazer tem que ter um login.... sad.gif

Valeu mesmo cara

+

Abraco

Link para o comentário
Compartilhar em outros sites

  • 0

seria mais facil armazenar os dados no mysql? e fazer busca nele depois? eu pensei em armazenar em html pois seria mais facila  busca!

Olha, talvez até fosse mais fácil na hora de realizar a busca... mas pense que você teria que criar um script pra pegar o conteúdo das páginas, interpretá-lo (separar título, meta-tags, conteúdo, etc.) e mandar isso para o banco de dados... fora que você teria que executá-lo freqüentemente, pra manter tudo atualizado. Mas daria pra fazer... ou em HTML (ou XML), tb. Vai do que você achar melhor...

Quanto ao script, esqueci que o PHP Classes precisa de login... :/ mas é gratuito, se você quiser se cadastrar. Vale a pena... tem classe lá pra tudo quanto é coisa que você possa imaginar... smile.gif

Falou!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...