|< 1 2 3 >| | 21 Einträge, 3 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
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#! /usr/bin/perl -w
use strict;
use CGI qw(:standard escapeHTML);
use CGI::Carp qw(fatalsToBrowser);
use WebDB;
my @element_liste =
(
{ name => "seriennr",
bez => "Seriennummer:", size => 30, muss => 1 },
{ name => "kauf_datum",
bez => "Kauf-Datum:", size => 20, muss => 1 },
{ name => "kauf_ort",
bez => "Wo gekauft:", size => 30 },
{ name => "anrede",
bez => "Anrede:", size => 30 },
{ name => "nach_name",
bez => "Nachname:", size => 30, muss => 1 },
{ name => "vor_name",
bez => "Vorname:", size => 30, muss => 1 },
{ name => "strasse",
bez => "Strasse:", size => 30 },
{ name => "plz",
bez => "Postleitzahl:", size => 10 },
{ name => "ort",
bez => "Ort:", size => 30 },
{ name => "land",
bez => "Land:", size => 2 },
{ name => "tel",
bez => "Telefon:", size => 20 },
{ name => "email",
bez => "E-Mail Adresse:", size => 60 }
);
print header (),
start_html (-title => "Produkt Registrierungs Formular",
-bgcolor => "white"),
h1("Produkt Registrierungs Formular");
eingabe_formular_anzeigen (\@element_liste);
print end_html ();
exit (0);
sub eingabe_formular_anzeigen # v3 mit Tabelle und Sternchen
{
my $element_liste_ref = shift;
my @zeile;
print start_form (-action => url ());
print p ("Bitte geben sie die Registrierungs-Daten "
. "ein, und drücken Sie dann den "
. strong ("Absenden") . "-Knopf.");
print p ("(Felder mit einem Sternchen müssen ausgefüllt werden)");
foreach my $f (@{$element_liste_ref})
{
my $bez = $f->{bez};
$bez .= "*" if $f->{muss}; # Sternchen hinzufügen
push (@zeile, Tr (
td (escapeHTML ($bez)),
td (textfield (-name => $f->{name},
-size => $f->{size}))
));
}
print table (@zeile),
submit (-name => "aktion", -value => "Absenden"),
end_form ();
}
1
2
3
4
5
6
7
8
9
10
my @element_liste =
(
{ art => textfield,
name => "nachname",
bez => "Nachname:", size => 30},
)
td ($f->{art} (-name => $f->{name},
-size => $f->{siz},
))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
my $counter = 1;
my @fields;
foreach my $f (@{$element_liste_ref})
{
my $bez = $f->{bez};
$bez .= "*" if $f->{muss}; # Sternchen hinzufügen
push(@fields,td (escapeHTML ($bez)),
td (textfield (-name => $f->{name}, -size => $f->{size}))));
if($counter % 3 == 0){
push (@zeile, Tr (@fields));
@fields = ();
$counter = 0;
}
$counter++;
}
td (textfield (-name => $f->{name}, -size => $f->{size})));
Quote2)Ich würde gerne nicht nur "textfield" sondern auch "popup_menu" usw. benutzten und es sollte möglichst dynamisch bleiben.
Das liebste wäre es mir wenn man es in @element_liste einfach als art angeben könnte.
Ich habe es wie folgt schon versucht es hat aber immer Syntaxfehler ausgespuckt.
1
2
3
4
5
my @values = ();
foreach my $item (@element_liste) {
push (@values, $item->{name});
} # foreach
print popup_menu(-name => 'irgendwas', -values = \@values);
1
2
my @values = map { $_->{name} } @element_liste;
print popup_menu(-name => 'irgendwas', -values = \@values);
1
2
print popup_menu(-name => 'irgendwas',
-values = [ map { $_->{name} } @element_liste ]);
1
2
3
4
5
6
7
8
9
10
my @element_liste =
(
{ art => textfield,
name => "nachname",
bez => "Nachname:", size => 30},
)
td ($f->{art} (-name => $f->{name},
-size => $f->{siz},
))
QuoteCan't use string ("<input type="text" name="" />") as a subroutine ref while "strict refs" in use at C:\Programme\Apache Group\Apache2\cgi-bin\kontakte.pl line 93.
QuoteCan't use string ("textfield") as a subroutine ref while "strict refs" in use at C:\Programme\Apache Group\Apache2\cgi-bin\kontakte.pl line 93.
|< 1 2 3 >| | 21 Einträge, 3 Seiten |