Seite 1 von 1

Daten aus Formular in DB schreiben

Verfasst: 26.06.2008, 13:52
von xoni
Hallo liebes Forum,

ich stehe gerade auf'm Schlauch. Problem:
1. Formular mit ca. 50 Checkboxen
2. Name der Checkboxen ist == Name der DB-Felder

Nun habe ich mir gedacht, ich könnte ganz einfach mit

Code: Alles auswählen

foreach ($_POST as $key => $value) {
        $sqlab = "INSERT INTO anzeige";
        $sqlab .= "($key) VALUES";
        $sqlab .= "('$value')";
        mysql_query($sqlab);
}


Mit einem Schwung den Eintrag erledigen. Problem hierbei:
auto_increment. Beim Durchlauf der Schleife wird logischerweise ein neuer Datensatz angefangen, was nicht erwünscht ist. Hat jemand einen Tipp für mich?

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 26.06.2008, 14:19
von Southmedia

Code: Alles auswählen

$felder = array();
$werte = array();

foreach ($_POST as $key => $value) {
   $felder[] = $key;
   $werte[] = "'".$value."'";
}

$felder = implode(',', $felder);
$werte = implode(',', $werte);

$sqlab = "INSERT INTO anzeige";
$sqlab .= "($felder) VALUES";
$sqlab .= "($werte)";
mysql_query($sqlab);
Zusätzlich unbedingt in die foreach noch eine Prüfung der Werte einbauen oder zumindest mysql_real_escape_string drüberlassen.

Verfasst: 26.06.2008, 14:24
von xoni
Southmedia hat geschrieben: Zusätzlich unbedingt in die foreach noch eine Prüfung der Werte einbauen oder zumindest mysql_real_escape_string drüberlassen.
@ Southmedia
Ja, mysql_real_escape_string läuft drüber, war eben nur der verkürzte Code.

Vielen Dank für Deine schnelle Hilfe...