Du gibst ja leider nichts an Perl- und HTML-Quellcode mit an, also kann man nur vermuten. Ich gehe davon aus du verwendest das CGI-Modul, und holst die Checkboxwerte mit param(), z.Bsp. so:
my $colors = $cgi->param('colors');
print $colors, "\n"; # gibt nur 'red' aus
In diesen Fall liefert dir param() nur einen Wert, keinen String mit allen Werten oder Aehnliches. Um alle Werte zu erhalten, muss param() im Listenkontext aufgerufen werden.
my(@colors) = $cgi->param('colors');
print "@colors\n"; # gibt 'red green blue' aus
Wenn du die Werte alle in einen String brauchst, musst du sie zusammenfuehren
my $colors = join ', ' => $cgi->param('colors');
print "$colors\n"; # gibt 'red, green, blue' aus
#!/usr/bin/perl use strict;
use warnings;
use CGI qw();
my $cgi = CGI->new;
print $cgi->header();
print $cgi->start_html;
if(my @colors = $cgi->param('colors')) {
foreach my $color (@colors) {
print "'$color'\n", $cgi->br;
}
}
print $cgi->start_form(),
$cgi->checkbox_group(-name => 'colors',
-values => [ 'red', 'blue', 'green' ],
-defaults => [ 'blue' ]),
$cgi->submit,
$cgi->end_form;
$cgi->end_html;
Wenn das nicht hilft ..., mehr Code bitte.
Datum: 22.06.2007-17:04
