URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 1351
[ Назад ]

Исходное сообщение
"search engine"

Отправлено Hugle , 04-Фев-03 13:31 
vot est' u menia spisok failov v odnm faile..
nuzhen srcipt kotoryj mozhno byloby pomestit na WEB'e
polzovatel vvodit nazvanije , script ishet v etom faile...
naprimer nahodit neskolko ssylok, vykidyvaet na sajt..
tolko ssylka dolzhna byt s izmenenijami..
nachalo faila takoje:
/home/ftp/xxx/x/x/
nado eto nachialo avtomatom replace /home/ftp/ na ftp://xx.xxx.xx.xx\
shtoby delal <a href=> t.e. CLICK.. i my kahiaem uzhe...
gde mozhno najti pohozhego naznachenija scripty..  ili mzohet ktoto imejet shtoto pohozheje?
spasibo bolshoe...
Jaroslav

Содержание

Сообщения в этом обсуждении
"RE: search engine"
Отправлено RUSLAN , 08-Фев-03 02:32 
Primerno tak:

------ ----------------------------
#!/usr/bin/perl
$files="files.txt";                   # zdes file s faylami  
$your_server="ftp://coolserver.com";   # tvoy servak
$dir="home/ftp";                       # catalog gde legat vse files
sub urldecode{
    local($val)=@_;
    $val=~s/\+/ /g;
    $val=~s/%([0-9A-Ha-h]{2})/pack('C',hex($1))/ge;
    return $val;
    }
print "Content-Type: text/html; charset=windows-1251\n\n";
if($ENV{'REQUEST_METHOD'} eq 'GET')
    {
         $query=$ENV{'QUERY_STRING'};
           }
  elsif($ENV{'REQUEST_METHOD'} eq 'POST')
    {
     sysread(STDIN,$query,$ENV{'CONTENT_LENGTH'});
             }
if($query eq ''){
    print "<HTML>\n";
    print "<HEAD>\n";
    print "<TITLE>FILES SEARCH</TITLE>\n";
    print "</HEAD>\n";
    print "<BODY>\n";
    print "<FORM>\n";
    print "<TABLE>\n";
    print "<TR>\n";
    print "<TD>File search:</TD>\n";
    print "<TD><INPUT name=\"filen\"> <INPUT type=\"submit\" name=\"subm\" value=\"Search\"></TD>\n";
    print "</TR>\n";
    print "</TABLE>\n";
    print "</FORM>\n";
    print "</BODY></HTML>\n";
    }
  
else {  
      
          @formf=split(/&/,$query);

      foreach(@formf){
        if(/^filen=(.*)/){ $filen=&urldecode($1); }     
                 }
            if(!$filen)
              {
               print "<font color=\"red\">not found </font>";
               exit(0);
              }

      open(F,"$files") || die "$!\n";
      while(<F>)
          {
          chomp;
          push(@masf,$_);
           }
          close(F);
        print "<HTML>\n";
    print "<HEAD>\n";
    print "<TITLE>SEARCH RESULT</TITLE>\n";
    print "</HEAD>\n";
    print "<BODY>";
         $temp=0;
    $filen=~s/^\s*//;
        $filen=~s/\s*$//;
    print "Search for: $filen <br>";
        foreach $fis(@masf)
               {
                if($filen=~m/$fis/i)
                    {
                    print "<a href=\"$your_server/$dir/$fis\">  $your_server/$dir/$fis </a>","<br>";
                    $temp++;
                      }
                                        }
             unless($temp)
              {
                 print "<font color=\"red\">not found </font>";
                 exit(0);
                 }
        print "</BODY>\n";
        print "</HTML>\n";

    }


----------- ----------- ------------