🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.perl
6 messages
6 total messages Started by Jerzy Orzeszek Wed, 05 Nov 1997 15:02
Problem z CGI...
#684
Author: Jerzy Orzeszek
Date: Wed, 05 Nov 1997 15:02
18 lines
1295 bytes
Proszę o pomoc w następującej sprawie:
napisałem skrypt cgi ,który wczytuje dane z formularza i dopisuje je do
pliku dane.html w postaci strony html.Każdy wpis jest oddzielony od
poprzedniego linią poziomą. I po każdym wprowadzeniu danych wyświetla
się strona z potwierdzeniem wprowadzenia danych.
 
A teraz sedno sprawy:
Jak napisać cgi którym będę mógł przeszukać plik dane.html ?
Chodzi o przeszukiwanie wg wpisanej nazwy w formularzu tak aby skrypt
otwierał sobie plik i szukał odpowiedniego wpisu, jak znajdzie 
nich cofnie się o cztery znaki - linia zaczyna się od:
<h3>Nazwa</h3>
i wczytuje powiedzmy pięć linii w dół. A wynik wyświetla na ekranie
w postaci strony html.

Czy ktoś mógłby mi pomóc???

Jerzy Orzeszek
Re: Problem z CGI...
#685
Author: Grzegorz BRZESKI
Date: Wed, 05 Nov 1997 16:22
17 lines
1017 bytes
Jerzy Orzeszek wrote:

[ciach]

> <h3>Nazwa</h3>
> i wczytuje powiedzmy piêæ linii w dó³. A wynik wy¶wietla na ekranie
> w postaci strony html.

Chcialbym zauwazyc ze jest to grupa na temat PERL'a, a nie na temat WWW
i skryptow CGI.

Z pozdrowieniami,

Grzegorz BRZESKI

--
Grzegorz BRZESKI - WEB Corporation Polska Sp. z o.o.
Re: Problem z CGI...
#686
Author: Witold Przygoda
Date: Wed, 05 Nov 1997 20:28
14 lines
1032 bytes
Grzegorz BRZESKI <gregory@webcorp.com.pl> wrote:

>Chcialbym zauwazyc ze jest to grupa na temat PERL'a, a nie na temat WWW
>i skryptow CGI.

Mam mala prosbe: jak juz chcesz byc taki bardziej papieski niz sam
papiez, to badz tak mily i na nastepny raz wysylaj tego typu uwagi
na adres _prywatny_ nadawcy, ok?  Bo na tej grupie nikomu nie sa
one potrzebne - a to juz nie pierwszy raz.


wp

p.s. ze swojej strony - przepraszam za off-topic
Re: Problem z CGI...
#687
Author: Tomasz Pilat
Date: Wed, 05 Nov 1997 21:10
16 lines
1148 bytes
Grzegorz BRZESKI <gregory@webcorp.com.pl> wrote:
> Chcialbym zauwazyc ze jest to grupa na temat PERL'a, a nie na temat WWW
> i skryptow CGI.
> Z pozdrowieniami,
> Grzegorz BRZESKI

To chyba jakiś robot. Filtruje feed i wywala takie coś...pewnie w perlu
pisany, bo inaczej co by robił na tej grupie...

TP
PS. Sorry za off-topicm ale ten gość jest....monotematyczny....
-- 
Tomasz "Poncki" Piłat
poncki@PoncLAND.xyz.lublin.pl
http://PoncLAND.xyz.lublin.pl/
http://PoncLAND.xyz.lublin.pl/GazNETa/ - Miesiecznik Internetowy.
Re: Problem z CGI...
#688
Author: Mariusz Krukowski
Date: Thu, 06 Nov 1997 08:13
15 lines
1218 bytes
Tomasz Pilat wrote:
> 
> Grzegorz BRZESKI <gregory@webcorp.com.pl> wrote:
> > Chcialbym zauwazyc ze jest to grupa na temat PERL'a, a nie na temat WWW
> > i skryptow CGI.
> > Z pozdrowieniami,
> > Grzegorz BRZESKI
> 
> To chyba jakiś robot. Filtruje feed i wywala takie coś...pewnie w perlu
> pisany, bo inaczej co by robił na tej grupie...

A g.... prawda. Grupa jest rzeczywiscie perlowa, a w liscie nie
bylo nawet slowa o perlu. Otwozcie sobie grupe pl.comp.cgi czy
cos podobnego. Jezeli juz ktos przysyla tu postingi o CGI, niech
chociaz ma to nikly zwiazek z tematem grupy.
Re: Problem z CGI...
#689
Author: Piotr Klaban
Date: Fri, 07 Nov 1997 09:54
86 lines
2930 bytes
Jerzy Orzeszek <Jerzy.Orzeszek@univcomp.waw.pl> wrote:
> A teraz sedno sprawy:
> Jak napisać cgi którym będę mógł przeszukać plik dane.html ?
> Chodzi o przeszukiwanie wg wpisanej nazwy w formularzu tak aby skrypt
> otwierał sobie plik i szukał odpowiedniego wpisu, jak znajdzie 
> nich cofnie się o cztery znaki - linia zaczyna się od:
> <h3>Nazwa</h3>
> i wczytuje powiedzmy pięć linii w dół. A wynik wyświetla na ekranie
> w postaci strony html.

> Czy ktoś mógłby mi pomóc???
#!/usr/bin/perl
# skrypt CGI w perlu szukajaca tekstu <h3>TEXT</h3> na stronie data.html
# wyswietla kawalek strony data.html z TEXT'em od <h3>TEXT</h3>
# do linii z <hr> na poczatku
# Piotr Klaban <makler@man.torun.pl>

$head = <<'END'; # head of the HTML document
<html>
<head>
<title>Wynik</title>
</head>
<body>
<h1 align="center">To jest to co chciales znalezc</h1>
END

$foot = <<'END'; # footer of the HTML document
<hr>
</body>
</html>
END

$file = 'dane.html';

########### BEGIN ##############

&ReadParse;
$TEXT = $in{'text'};

print "Content-Type: text/html\n\n";
print $head;


open(PLIK,"$file") || die "Open $file: $!\n";
while (<PLIK>) {
	if (/^<h3>([^<]+)<\/h3>/) { # find <h3> case insensitive
		$found = 1 if $1 eq $TEXT; # or => $1 =~ /^$TEXT$/i
	}
	last if $found && /^<hr>/i; # the end of the data record
	print if $found;
}
close(PLIK) || die "Close $file: $!\n";

print "$TEXT not found. ;-(<br>\n" if !($found);

print $foot;

sub ReadParse { # my readparse method
        my($req,@req);
        $req = $ENV{'REQUEST_METHOD'} eq 'GET' ?
           $ENV{'QUERY_STRING'} :
           join('',<STDIN>);
	$req =~ s/\n//g;
        @req = split(/&/,$req);
        foreach (@req) {
                my($key,$value) = split(/=/,$_,2);
                $in{"$key"} = &uri_unescape($value);
        }
}

sub uri_unescape # from URI::Escape with my own improvements
{
    # Note from RFC1630:  "Sequences which start with a percent sign
    # but are not followed by two hexadecimal characters are reserved
    # for future extension"
    my @copy = @_;
    for (@copy) { s/\+/ /g; s/%([\dA-Fa-f]{2})/chr(hex($1))/eg; }
    wantarray ? @copy : $copy[0];
}

#P.K.

-- 
Piotr Klaban
--
makler@man.torun.pl
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads