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

Script Busca =/


Guest RedNeck

Pergunta

Guest RedNeck

Olah,

Antes que me xinguem queria dizer que sou cadastrado sim, porem esqueci minha senha tongue.gif... Enfim o que eu queria é um sistema de busca interna, funcao basica, ler todas as paginas que estao na pasta "e no site se for possivel" e retornar o que encontrou, creio eu que para quem manja isso não deve ser muito dificil...

Pois estou querendo fazer um site e pretendo ter muitas paginas, aqueles scripts prontos quase todos tem que por pagina por pagina, eu não queria algo simples que procurasse nas paginas e retornasse o que encontrou, alguém me entendeu?

Bom eu até tentei, mais não saiu nada tongue.gif alguém tem o script ae ? Posta pos tenho certeza que tem muitos "noobs" como eu que gostariam muito disso...

Enfim obrigado a todos

Boa noite.

RedNeck...

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Que bom ! Mais assim Gladisson responde a pergunta do Sperto_Rox... Tambem estou interessado na resposta tongue.gif

gladisson você pode fazer um exemplo de "puxar" uma pagina do banco de dados so pra eu ter uma idéia? ou então so explica como é porque não tenho nem idéia de como é "puxar" uma página do bd

É isso valeu por tudo ae

Abracos

Link para o comentário
Compartilhar em outros sites

  • 0

Ae gladisson....

não sei como, mas sei q tem jeito.....

sera q não daria pra fazer algo como rodar um script q gera um arquivo .inc ou .php mesmo e que grava nesse arquivo gerado algo como:

<?

$t[0] = "PHP o Melhor Sistema";
$c[0] = "O php é o melhor sistema para internet que existe!";
$l[0] = "php_o_melhor.php";

$t[1] = "Programador PHP";
$c[1] = "Se você quizer contratar um grande programador PHP, pode me contratar!";
$l[1] = "programador_gso.php";

$t[2] = "Cifras";
$c[2] = "Cifras de montão aproveite logo!";
$l[2] = "cifra.php";

?>
sei la.... ele procura todas as paginas grava em $t[] o titulo da paginas, grava em $c[] o conteudo da pagina e em $l[] o endereco do link..... acho q da pra se fazer.... ai no script q você passou, era so incluir este arquivo e procurar la.... num da pra fazer isso não??? o q é <<< EOF em
<?

$html = <<< EOF

<FORM METHOD='POST'>
Buscar por:<BR>
<INPUT NAME='texto' TYPE='text' SIZE='20'><BR>
<INPUT TYPE='submit' VALUE='Pesquiza'>
</FORM><BR>

EOF;

......

?>

fui...

Link para o comentário
Compartilhar em outros sites

  • 0
Que bom ! Mais assim Gladisson responde a pergunta do Sperto_Rox... Tambem estou interessado na resposta tongue.gif

gladisson você pode fazer um exemplo de "puxar" uma pagina do banco de dados so pra eu ter uma idéia? ou então so explica como é porque não tenho nem idéia de como é "puxar" uma página do bd

É isso valeu por tudo ae

Abracos

asim..

faz, por exemplo, uma tabela secoes...

id | titulo | conteudo

$query = mysql_query("select from * secoes where id='$id'");

$s = mysql_fetch_array($query);

print $s['titulo'];

print '<br><br>';

print $s['conteudo'];

o link... paginas.php?id=ID

+/- isso...

falou ph34r.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Ae gladisson....

não sei como, mas sei q tem jeito.....

sera q não daria pra fazer algo como rodar um script q gera um arquivo .inc ou .php mesmo e que grava nesse arquivo gerado algo como:

<?

$t[0] = "PHP o Melhor Sistema";
$c[0] = "O php é o melhor sistema para internet que existe!";
$l[0] = "php_o_melhor.php";

$t[1] = "Programador PHP";
$c[1] = "Se você quizer contratar um grande programador PHP, pode me contratar!";
$l[1] = "programador_gso.php";

$t[2] = "Cifras";
$c[2] = "Cifras de montão aproveite logo!";
$l[2] = "cifra.php";

?>
sei la.... ele procura todas as paginas grava em $t[] o titulo da paginas, grava em $c[] o conteudo da pagina e em $l[] o endereco do link..... acho q da pra se fazer.... ai no script q você passou, era so incluir este arquivo e procurar la.... num da pra fazer isso não??? o q é <<< EOF em
<?

$html = <<< EOF

<FORM METHOD='POST'>
Buscar por:<BR>
<INPUT NAME='texto' TYPE='text' SIZE='20'><BR>
<INPUT TYPE='submit' VALUE='Pesquiza'>
</FORM><BR>

EOF;

......

?>

fui...

Claro que dá, mais nesse caso ai axo melhor criar de outra forma.

O que você quer é incluir, deletar e atualizar os dados via php, é isso né ?!

Mais se você quer gerar do jeito que está no script que fiz, ficará mais complicado, até para atualizar mais é uma questão de parar e analizar.

o EOF é um comando que dentro dele você pode utilizar tags 'html' a vontade sem se preoucupar com as aspas duplas ou simples. Sendo que dentro dela você só pode a variavel corespondente, nuam funciona se você quizer colocar comando como 'function', 'for' e etc...

=====================================

e como eu descubro o id? vixi fico complicado blood voce pode explicar melhor ? :S thx

Ai cara é complicado querer entender tudo assim da noite pro dia, você tem que ter conhecimento de lógica tb, senão cara você sempre ficará 'bufando' no assunto sem entender o que os pessoal fala.

Veja o que o blood falou é o que eu quiz me referir sim é exatamente isso.

Link para o comentário
Compartilhar em outros sites

  • 0

Eu sei Gladisson, eu sei que não posso aprender tudo de uma vez... Porem eu quase cheguei la hoje ! eu li tudin acho que entendi tudin, deveria sair certo, porem sad.gif nada.... vou postar o codigo, voces podem ver onde foi que eu errei?

busca.php

<html>
<head><title>Busca - Músicas</title></head>
<style>
.fontNormal     { font-family: Verdana; font-size: 10px; color: #333333; font-weight: normal; text-decoration: none; }
.fontLink       { font-family: Verdana; font-size: 12px; color: #000000; font-weight: normal; text-decoration: none; }
.fontLink:hover { font-family: Verdana; font-size: 12px; color: #333333; font-weight: normal; text-decoration: underline; }
.inputText      { font-family: Verdana; font-size: 10px; color: #333333; font-weight: normal; text-decoration: none; background-color: #F8F8F8; border: 1px solid #333333; height: 20px; width: 200px; padding: 2px; }
.inputButton    { font-family: Verdana; font-size: 10px; color: #000000; font-weight: normal; text-decoration: none; background-color: #F8F8F8; height: 19px; }
</style>
<body bgcolor="#aabbee">
<table align="center">
  <tr>
    <td align="center">
<?

$html = <<< EOF

<FORM METHOD='POST'>
Buscar por:<BR>
<INPUT NAME='texto' TYPE='text' SIZE='20'><BR>
<INPUT TYPE='submit' VALUE='Pesquiza'>
</FORM><BR>

EOF;

echo $html;

?>

    </td>
  </tr>
  <tr>
    <td height="20"></td>
  </tr>
  <tr>
    <td>

<?
//Definindo Variáveis 

settype($texto,'string'); 
settype($id,'string'); 
settype($file,'string'); 
settype($conteudo,'string'); 
settype($sentinela,'integer'); 

//Array Que Guarda Os Nomes 
//Dos Arquivos Disponiveis 
//Para Pesquisa 

// Note que !== não existia antes do PHP 4.0.0-RC2
$pasta = getcwd();
if ($handle = opendir($pasta)) {
   echo "Manipulador de diretório: $handle\n";
   echo "Arquivos:\n";

   /* Esta é a forma correta de varrer o diretório */
   $i = 0;
   while (false !== ($file = readdir($handle))) {
  $arquivo2[$i] = $file;
  $i = $i + 1;
  $nome_arquivo0 = explode(".", $file);
  $nome_arquivo = $nome_arquivo[0];
  $arquivo3[$i] = $nome_arquivo;
  	
   }
   closedir($handle);
}

//Variável Que Guarda 
//O Número De Aruivo 
//Contido No Array 

$contador=3; 

//Gera O Loop Exibindo 
//Todos Os Arquivos Em 
//Que Foram Positiva A Pesquisa 

if($texto !="") 
{ 
echo "<ul>"; 
for($i=0;$i<$contador;$i++){ 

$arquivo ="$arquivo2[$i]"; 
$arquivoB ="$arquivo3[$i]"; 

$id = fopen($arquivo, "r"); 

$conteudo = fread($id,filesize($arquivo)); 

//Apenas um truque para que alguns 
//caracteres não dê erro 

if($texto=="*" ||$texto=="?" ||$texto=="+") 
  {$texto="\$texto";} 

  if($texto=="[" ||$texto=="(" ) 
  {$texto="çç{%ÇÇÇ";} 
   
   
  //Analiza a palavra inserida, Procura 
  //em todos os arquivos colocados no array 
  //e retorna o valor 

  if(!feof ($id)== eregi($texto,$conteudo)  ) 
   
      
  {echo "<li  style='text-indent : 30px'><a href="."$arquivo".">$arquivoB</a></li><BR>"; 
   
  $sentinela=1; 
   } 
   
  } 
  echo "</ul>"; 
  //Caso A palavra não exista, a 
  //variável não assume valor algum 
  //e é impressa a mensagem abaixo 
   
  if(!$sentinela ) 
  {echo "<font size=3 color='red'>&nbsp;&nbsp;Desculpe Mas Essa Palavra Não Foi  Encontrada</font>";} 
  } 
      
         
?> 

    </td>
  </tr>
</table>
</body>
</html>
config.php
<?php
if(isset($_POST['texto'])){
$dir = "./";
$dh = opendir($dir);
$x=0;
   while (false !== ($filename = readdir($dh))){
      if (substr($filename,-5) == ".html") {
        $lines=file($filename);
        $arquivo2[$x]= $filename;
        $arquivo3[$x]= $lines[0];
        $x++;
      }
   }
}
?>
o codigo é imenco eu sei, mais é facinho de ler... Enfim, vou tentar explicar o que fiz, peguei o script fui modificando, ae eu quase cheguei la, apos pensar muito vi que o que estava errado é que o script não conseguia ler html... ae eu fui lendo os posts com atencao e li que o esse codigo fazia o php ler html :
<?

$html = <<< EOF

<FORM METHOD='POST'>
Buscar por:<BR>
<INPUT NAME='texto' TYPE='text' SIZE='20'><BR>
<INPUT TYPE='submit' VALUE='Pesquiza'>
</FORM><BR>

EOF;

echo $html;

?>

depois disso meu codigo deveria sair certo, porem continua na mesma, não ta dando... é isso,

a antes que o Gladisson me xingue *eu sei que isso iria tornar o script lento, mais quero tentar terminar esse que ta quase la para entender um pouco, depois desse irei fazer o que voce me falou, ou melhor tentar tongue.gif*

é isso

obrigado a todos ae !

SB.COM.BR ROX A LOT !

Abracos

Link para o comentário
Compartilhar em outros sites

  • 0

e como eu descubro o id? vixi fico complicado blood voce pode explicar melhor ? :S thx

falooo

obrigado a todos

aí você faz os links com while!

<?php 
$query = mysql_query("select from * secoes");
while($s = mysql_fetch_array($query));
$id = $s['id'];
$secao = $s['titulo'];
print '<a href="?id='.$id.'">';
print $secao;
print '</a>';
print '<br>';

} 
?>

gladisson to com uma duvia ... como eu faria pra incluir apartir de um formulario os titulo o conteudo e o link? como eu faria pra isso cair dentro das variaveis $t $c e $l?

acho q não tem como blink.gif

...talvez teria.. faria um rand() pra ver o numero do array tongue.gif

i colocar tudo em otro arquivo.. .php

num sei se da tongue.gifph34r.gif

Link para o comentário
Compartilhar em outros sites

  • 0
gladisson to com uma duvia ... como eu faria pra incluir apartir de um formulario os titulo o conteudo e o link? como eu faria pra isso cair dentro das variaveis $t $c e $l?

cara....

na pratica não sei como, mas em teoria seria assim....

o script le arquivo por arquivo dentro de um diretorio..... em cada arquivo ele pega o que estiver entre <title> e </title> e guarda em $t[].... depois ele guarda em $c[] tudo que estiver entre <body> e </body>, retirando as tags HTML... depois ele pega o nome do arquivo e guarda em $l[].

Exemplo:

1- Script roda...

2- Abre arquivo: index.php...

3- Procura tags <title> e </title>...

4- Guarda o que estiver entre isto em $t[0]...

5- Procura as tags <body> e </body>...

6- Retira as tags HTML...

7- Guarda tudo dentro de $c[0];

8- Pega o nome do arquivo que foi aberto....

9- Guarda em $l[0]....

10- Fecha arquivo: index.php....

11- Abre arquivo: principal.php...

12 - Repete passos de 3 até 11, com numeracao $t[1], $c[1] e $l[1]....

e assim por diante.... so não sei como fazer isso no PHP propriamente dito.... mas a teoria segue esse algoritmo ai....

espero ter iluminado a cabeca de alguém que possa fazer o script....

Link para o comentário
Compartilhar em outros sites

  • 0

hmm hmmmm, ta tudo lindo, ta tudo belo porem agora vem a duvida...

eu criei a tabela...

CREATE TABLE secoes (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
titulo VARCHAR(100) NOT NULL,
conteudo LONGTEXT NOT NULL,
) TYPE=MyISAM;
agora proximo passo é fazer a conexão...
<?

// Dados para conexão.

$local = "localhost"; //Local do mysql...
$usuario = "user"; //Usuario da database...
$senha = "password"; //Senha da database *se não tiver deixe em branco*...
$db = "database"; //O nome do seu database *Banco de Dados*...

// Conexão da db.
$conn = mysql_connect($local, $usuario, $senha); //Conectando ao mySQL...
mysql_select_db($db); //Seleciona o DB...

?>
certoooo certooo, por enquanto acho que esta tudo certo, agora vem o script que "puxa" o "id" da mysql
<?php 

// Script by blood :P

$query = mysql_query("select from * secoes");
while($s = mysql_fetch_array($query));
$id = $s['id'];
$secao = $s['titulo'];
print '<a href="?id='.$id.'">';
print $secao;
print '</a>';
print '<br>';

} 

?>

assim eu acho que é tudo ! porem tem uma coisa que eu não sei fazer, agora como faco um script para por os dados no mysql?

ou tem que ser manualmente mesmo?!

bommmm podemos tambem fazer o que o Sperto_Rox perguntou, fazer 1 script para guardar os titulos , conteudos e links das paginas ..

Bom depois que esse script sair *se ele sair* creio que sera o melhor script de busca do mundo tongue.gif, ae postarei ele para todos usar *pois eu não fiz nada sozinho !*...

É isso

Falo ae gente

Obrigado mesmo !

Link para o comentário
Compartilhar em outros sites

  • 0

heuaeheuae.....

faz um form normal, com os campos.. titulo e conteudo

aí na pagina q for enviar...

<?php

$conteudo = $_POST['conteudo'];
$titulo = $_POST['titulo'];

$inserta = mysql_query("INSERT INTO secoes VALUES ('', '$titulo', '$conteudo'");

if($inserta){ print 'Seção cadastrada com sucesso.';}else{ print mysql_error(); }

?>
ahh..... ali no script eu errei... tongue.gif o certo é assim..
<?php 

// Script by blood :P

$query = mysql_query("select from * secoes");
while($s = mysql_fetch_array($query)){
$id = $s['id'];
$secao = $s['titulo'];
print '<a href="?id='.$id.'">';
print $secao;
print '</a>';
print '<br>';

} 

?>

falto o {

e não iskece do inclui o arquivo la da conexao aí..... falou ph34r.gif

Link para o comentário
Compartilhar em outros sites

  • 0
gladisson to com uma duvia ... como eu faria pra incluir apartir de um formulario os titulo o conteudo e o link? como eu faria pra isso cair dentro das variaveis $t $c e $l?

Veja se você quer incluir os dados via php, teremos que adotar um metodo mais prático e fácil entendimento, porque desse jeito se tornaria muito mais lento o processamento.

Em vez de:

$t[0] = "PHP o Melhor Sistema";

$c[0] = "O php é o melhor sistema para internet que existe!";

$l[0] = "php_o_melhor.php";

Seria:

PHP o Melhor Sistema|O php é o melhor sistema para internet que existe!|php_o_melhor.php

Mais nesse caso teremos que readaptar o script.

Fazendo com que cada linha e oluna ganha suas respectivas variaveis:

Linha 1:

Campo1: $t[$variavel_dada_pelo_'for]

Campo2: $c[$variavel_dada_pelo_'for']

Campo3: $l[$variavel_dada_pelo_'for']

E assim vai...

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...