Rouven: NULL-Felder in Sybase

Beitrag lesen

Hi,

das ist wohl war, bei einem langen Formular ist das wohl wirklich eine ziemlich aufwendige Sache. Aber gehen würde es in etwa so:

$db_feld1 = ($HTTP_POST_VARS['feld1'] == "") ? "NULL" : "'".$HTTP_POST_VARS['feld1']."'";
$db_feld2 = ($HTTP_POST_VARS['feld2'] == "") ? "NULL" : "'".$HTTP_POST_VARS['feld2']."'";
$db_feld3 = ($HTTP_POST_VARS['feld3'] == "") ? "NULL" : "'".$HTTP_POST_VARS['feld3']."'";

// In jedem db-String steht jetzt entweder nur NULL oder '<inhalt>'.
// --> Insert
mysql_query("INSERT INTO tab (f1, f2, f3) VALUES ($db_feld1, $db_feld2, $db_feld3)");

// je nach Inhalt sieht dann der DB-Interpreter "aha, NULL" oder er fügt einen String ein.

-------

Einzige Frage wäre, ob es evtl. mit einem for-each noch eine elegantere Lösung für die geposteten Variablen gäbe, so nach dem Motto Array automatisch verwandeln oder so. Aber so auf Anhieb weiß ich nicht, ob es die Gedanken Wert wäre, kommt darauf an, ob das Skript mal irgendwann gewartet werden muss...