Mahlzeit Olk Okenheld,
... und sehen wie genau aus (also das $_POST-Array)?
Wenn der Benutzer z.B. zwei Datensätze übergibt wäre der erste Datensatz:
$_POST['Name1']
$_POST['Vorname1']
$_POST['Anschrift1']
der zweite wäre
$_POST['Name2']
$_POST['Vorname2']
$_POST['Anschrift2']
Wie dedlfix bereits anmerkte wäre die Verwendung von Namen wie "Name[1]", "Vorname[1]", "Name[2]", "Vorname[2]" usw. sinnvoller, weil Du dann nämlich gleich entsprechende Arrays zur Verfügung hättest:
$sql = '';
// Einmal durch alle übertragenen Daten laufen
for ($i = 1; $i <= 40; $i++) {
// Überprüfen, ob alle "Pflichtangaben" gemacht wurden (musst Du entsprechend Deinen Anforderungen umschreiben)
if (($_POST['Name'][$i] != '') && ($_POST['Vorname'][$i] != '')) {
$sql .= sprintf(", ('%s', '%s')", mysql_real_escape_string($_POST['Name'][$i]), mysql_real_escape_string($_POST['Vorname'][$i]));
}
}
if ($sql = '') {
$sql = sprintf("INSERT INTO %s (Name, Vorname) VALUES %s", $MainTable, substr($sql, 1));
}
(Ungetesteter Code-Vorschlag)
Insbesondere berücksichtigt dieser Code die von Dir sträflich vernachlässigten Kontextwechsel und minimiert das Risiko von Angriffen durch SQL-Injection (durch den Einsatz von mysql_real_escape_string()).
MfG,
EKKi
--
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|