Thread Beispiel für Einsteiger (13 answers)
Opened by saxoBeat at 2012-02-13 06:53

rosti
 2012-02-13 09:08
#156064 #156064
User since
2011-03-19
3211 Artikel
BenutzerIn
[Homepage]
user image
Code (perl): (dl )
1
2
- die URL wird in Firefox geöffnet
- es erscheint auf der Befehlszeile die Abfrage, ob die URL übernommen oder verworfen wird


Das geht weder mit Perl, noch mit einer anderen Sprache zu machen: eine Befehlszeile. Du meinst wahrscheinlich ein Eingabefeld.

Das müssen jedoch dann mehrere URLs sein, also nicht nur eine, wie Du schreibst. Die Steuerung des Scripts erfolgt dann über Parameter, welche in einer Kontrollstruktur abgefragt werden, hier ein kleines Beispiel:

http://rolfrost.de/cgi-bin/mail.cgi <- online zum Testen

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/perl

use strict;
use warnings;
use CGI;
use IO::File;

my $u = CGI->new;

if($u->param){
        if($u->param('vote')){
                # Datei serverseitig einlesen
                my $fh = IO::File->new;
                $fh->open("$ENV{DOCUMENT_ROOT}/robots.txt", "r") or do{
                        print $u->header, $u->h1("Fehler beim Lesen der Datei: $!");
                        exit;
                };
                read($fh, my $in, -s $fh);
                $fh->close;
                # die entsprechenden Header und die Datei zum Download
                print "Content-Disposition: attachment; filename=robots.txt\n";
                print "Content-type: text/plain\n\n";
                print $in;
                # weitere Aktionen: Kommentar serverseitig speichern... u.a....
        }
        else{
                print $u->header, $u->h1("Unbekannter Parameter");
        }
}
else{
        print $u->header, $u->h1("Inhalt download?");
        print qq(
                <form action="$ENV{SCRIPT_NAME}">
                        Komentar hier: <input name="comment">
                        <input type="submit" name="vote">
                </form>
        );
}


In der Praxis kommt da natürlich noch Einiges hinzu ;)

Viel Spaß mit Perl,
Rosti

View full thread Beispiel für Einsteiger