Ir para conteúdo
Fórum CódigoFonte.net
Entre para seguir isso  
silas_master

Sistema de Busca em Cgi-perl

Recommended Posts

Sistema simples porém funcional.

#!/usr/bin/perl
#######
# Aqui vem os header e comandos do modulo CGI
#######
print "Content-type: text/html\n\n";
use CGI;
$cgi = new CGI;
$key = $cgi->param("key");

#######
# Criamos o topo da busca
#######

print qq~
<center><h2>Sistema de busca</h2><hr>
<form method="Post">
Buscar por: <input type="text" name="key"> <input type="submit" value="Pesquisar">
</form>
~;

#######
# Codigo
#######

if($key ne ""){ # se $key for diferente de ""

open(BD,"sites.dat"); # supondo que o arquivo seja com os dados seja o sites.dat
@bd=<BD>; # colocams os dados em uma array
close(BD); #fechamos o bd

$key2 = uc($key); # deichmamos as palavras buscadas em minusculo em uma nova variavel
print "Buscando por <b>$key</b><br><br>";
$var = "0"; # criamos uma nova var para saber se teve resultado

foreach(@bd){ #damos um loop
chop; # tiramos os espaços em branco
($nome,$url,$descricao) = split(/\|/,$_); #separamos os campos
$descr = uc($descricao);  # deichmamos a descricao em minusculo em uma nova variavel
if($key2 ~= /$descr/i){ #aqui vemos se tem $key2 no meio de $descr
# se tiver, impimi e conta +1 a $var

print qq~
<a href="$url" target="_blank">$nome</a>: $descricao<br>
~;
$var +="1"; #soma +1 a $var (pode-se usar também $var++;)
} #fecha o if da verificação
} #fecha o loop

#agora vemos se $var for igual a "0", se for, não econtrou nenhum resultado
if($var eq "0"){
print "Não econtramos nenhum resultado para <b>$key</b>";
}

#agora fechamos o if
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Visitante
Responder

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Processando...
Entre para seguir isso  

×
×
  • Criar Novo...