phpbar.de logo

Mailinglisten-Archive

[php] Datenbankeintrag aus Formular

[php] Datenbankeintrag aus Formular

Sebastian Mendel lists at sebastianmendel.de
Mit Jul 12 13:35:26 CEST 2006


Werner Laude schrieb:
> Hallo.
> 
> Für einen insert in mysql aus einem umfangreichen Formular möchte ich 
> folgendes verwenden:
> 
> array_pop($_POST); //nimmt das $submit raus
> 		
> foreach($_POST as $item => $value) {
> $bez .= $item.",";
> }
> 			
> foreach($_POST as $item => $value) {
> $wert .= "'".$value."',";
> }

$bez = '';
$wert = '';
foreach($_POST as $item => $value) {
    $bez .= $item.",";
    $wert .= "'".$value."',";
}


> $db->sql_befehl("INSERT INTO umfrage ($bez) VALUES ($wert)")
> 
> 
> Nun weiß ich nicht, wie ich das letzte Komma hinter dem jeweils letzten 
> Wert rausbekomme.

$bez = substr($bez, 0, -1);
$wert = substr($wert, 0, -1);


> ("INSERT INTO tabelle (wert1,wert2)");
> 
> Oder gibt es bessere Löungen ?

das sowieso, weil du die Werte ungeprüft in die DB schreiben willst -
ganz schlecht!


$values = array();
foreach($_POST as $item => $value) {
    $values[] = '`' . mysql_real_escape_string($item) . '` = '"' .
mysql_real_escape_string($value) . '"';
}

$sql = 'INSERT INTO `table` SET ' . implode(', ', $values);


-- 
Sebastian Mendel

www.sebastianmendel.de

php::bar PHP Wiki   -   Listenarchive