my %element; $element{liste} = [ { art => "textfield", name => "nachname", bez => "Nachname:", size => 20}, { art => "textfield", name => "vorname", bez => "Vorname:", size => 20}, { art => "popup_menu", name => "zimmerbett", bez => "Zimmer/Bett:",}, { art => "popup_menu", name => "anrede", bez => "Anrede:",}, .... ]; ... My $cgi = CGI->new(); My %params = $cgi->Vars(); My $sql = qq~INSERT INTO Kontakt (~ . join (',', values %element{name}) .qq~) VALUES (~ . join(',',map { $dbh->quote($params{$_} ) } keys %element{name} .")";