Leser: 2
|< 1 2 >| | 20 Einträge, 2 Seiten |
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
#!/usr/bin/perl
use strict;
use warnings;
use CGI qw/:standard/;
# Neues CGI-Objekt, mit dem du Parameter auslesen kanns, HTTP-Header und HTML
# ausgeben kannst
my $query = CGI->new();
# Header ausgeben
print $query->header();
my $variable_value = $query->param('variable');
# ACHTUNG: Nachdem du den Wert der Variable in ein Shell-Skript weitergibst,
# solltest du unbedingt prüfen, dass da kein Mist drinsteht. Da ich nicht weiss,
# welche Werte denn in dieser Variablen stehen dürfen, kann ich dir dafür keinen
# Check vorgeben!!!
open my $pipe, '|-', '/etc/test.sh' or die $!;
{
local $SIG{PIPE} = 'IGNORE';
print $pipe "$variable_value" or die $!;
}
close $pipe or die $?;
Use of uninitialized value in string at mario.cgi line 23.
http://domain.example/cgi-bin/skript.pl?variable=wert
perl mario.cgi variable=zzz
http://ip.ip.ip.ip/cgi-bin/mario.cgi?variable=zzz
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<h1>Serverfehler!</h1>
<p>
Die Anfrage kann nicht beantwortet werden, da im Server
ein interner Fehler aufgetreten ist.
</p>
<p>
Fehlermeldung:
<br />Premature end of script headers: mario.cgi
</p>
1
2
3
4
5
6
7
8
...
read variable1
read variable2
read variable3
touch ${variable1}
touch ${variable2}
touch ${variable3}
...
http://...test.pl?variable1=eins.txt&variable2=zwei.txt&variable3=drei.txt
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
#!/usr/bin/perl
use strict;
use warnings;
use CGI qw/:standard/;
# Neues CGI-Objekt, mit dem du Parameter auslesen kanns, HTTP-Header und HTML
# ausgeben kannst
my $query = CGI->new();
# Header ausgeben
print $query->header();
my $variable_value = $query->param('variable');
# ACHTUNG: Nachdem du den Wert der Variable in ein Shell-Skript weitergibst,
# solltest du unbedingt prüfen, dass da kein Mist drinsteht. Da ich nicht weiss,
# welche Werte denn in dieser Variablen stehen dürfen, kann ich dir dafür keinen
# Check vorgeben!!!
open my $pipe, '|-', 'sudo /etc/test.sh' or die $!;
{
local $SIG{PIPE} = 'IGNORE';
print $pipe $variable_value or die $!;
}
close $pipe or die $?;
|< 1 2 >| | 20 Einträge, 2 Seiten |