Thread dynamische Dropdown Menu mit CGI (4 answers)
Opened by gmafx at 2011-01-08 00:23

gmafx
 2011-01-08 21:51
#144298 #144298
User since
2009-11-19
47 Artikel
BenutzerIn
[default_avatar]
Sorry,

jetzt habe ich zu diesem Thema schon wieder eine Frage:

Ich möchte die Auswahl für das Menu ja an das nächste Skript weitergeben, was ist denn eigentlich der Parameter-Name?

'select list' (und 'myform') funktionieren irgendwie nicht! ('select list' habe ich mittlwereile in 'select_list' umbenannt)

Ich versuche den ausgewählten Wert folgendermaßen in nächsten Skript auszulesen:

Code: (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
#!/usr/bin/perl
use strict;
use warnings;
use CGI qw(:standard);
use CGI::Carp qw(warningsToBrowser fatalsToBrowser);

# predefined Vars:
my $dir = "/Library/WebServer/Documents/CC/lists/";


print header;

warningsToBrowser(1);

######### paramters : myform= monthly list from= default 0 to= default 200
my $query=new CGI;
my $value = $query->param('select_list');


### generate link to file that is going to be displayed
my $filelink = $dir . $value . ".txt";

### test link -> does not work
print "$filelink"; #### $value ist leer!!!

#### are there any parameters around?
foreach my $p (param())
{
print $p, " ";
}


Irgendwie sieht so aus, als ob keine Parameter übergeben worden wären. Zu diesem Zweck hier nochmal die endgültige Version des ersten Skripts:

Code: (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
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/usr/bin/perl
use strict;
use warnings;
use CGI qw(:standard);
use CGI::Carp qw(warningsToBrowser fatalsToBrowser);

# predefined Vars:
my $dir = "/Library/WebServer/Documents/CC/lists/";
my $nextscript = 'http://localhost/cgi-bin/CC/pick.pl';

print header;
# nach dem Header auch Warnungen ausgeben
# werden als HTML Kommentare eingefügt!
warningsToBrowser(1);

########################################################################
#### check what lists are available and create dropdown menu to select

opendir(DIR, $dir) or die "$!";

# du willst doch alle Dateien die mit ".txt" enden.
# Du kannst auch gleich die Endungen entfernen:
my @lists = grep {s/\.txt$//} readdir DIR;

closedir(DIR);

print start_html("Select papers from selection:");

print <<HTML;
<font face="Arial"> available lists with candidate publications:</font>
</br>

<form name="myform" action="$nextscript" method="POST">
<div align="left">
<select name='select_list'>
HTML

print qq( <option value="$_">$_</option>\n) for (@lists);

print <<HTML;
</select>
</div>
</form>
HTML

print <<HTML;
<br>
<form action="$nextscript" method='POST'>
<FORM><INPUT TYPE='submit' VALUE='submit'> </FORM>
HTML
print end_html;

View full thread dynamische Dropdown Menu mit CGI