Thread Insert bei vielen Feldern.... (15 answers)
Opened by zipster at 2006-01-17 16:28

zipster
 2006-01-19 11:27
#6667 #6667
User since
2004-09-06
458 Artikel
BenutzerIn
[default_avatar]
Super, jetzt ist es mir doch um einiges klarer.

Korrigiere mich bitte wenn ich falsch liege.

Da ja mein html-formnamen gleich den db-Feldernamen sind kann ich mir doch eigentlich das mapping sparen oder?

Wäre es korrekt wenn ich den Code wie folgt benutzte?
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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}
.")";


Trotz deiner sehr guten Erklärung habe ich trotzdem noch Fragen.

Was bewirkt das qq in dem SQL INSERT Befehl?
"~" Wird doch normalerweise als Trennungszeichen benutzt, warum taucht das auch in diesem Befehl auf?
Du hast doch folgendes oben in deinem Codeschnipsel stehe:
Code: (dl )
1
2
3
# hier dann die gueltigkeit ueberpruefen
# ...
# und dann das sql bauen:


Was für ne Gültigkeit soll ich überprüfen? Wenn ich ein Date Feld benutzte das dann auch ein Datum drin steht oder wie ist das gemeint?


Und schon mal vielen Dank hast mir echt weitergeholfen.\n\n

<!--EDIT|zipster|1137662990-->

View full thread Insert bei vielen Feldern....