Fehler in der Abfrage?

kekskruemel

Angesehenes Mitglied
CODE
$aendern="UPDATE tankstellen SET";

if(!empty($_POST[$Benzin]))

{

$aendern .=" Benzin='$_POST[$Benzin]'";

}

if(!empty($_POST[$Super]))

{

$aendern .=", Super='$_POST[$Super]'";

}

if(!empty($_POST[$SuperPlus]))

{

$aendern .=", SuperPlus='$_POST[$SuperPlus]'";

}

if(!empty($_POST[$Diesel]))

{

$aendern .=", Diesel='$_POST[$Diesel]'";

}

if(!empty($_POST[$BioDiesel]))

{

$aendern .=", BioDiesel='$_POST[$BioDiesel]'";

}

if(!empty($_POST[$SuperDiesel]))

{

$aendern .=", SuperDiesel='$_POST[$SuperDiesel]'";

}

if(!empty($_POST[$Gas]))

{

$aendern .=", Gas='$_POST[$Gas]'";

}

$aendern.=", Zeit='$Zeit', $aktiv='nein' WHERE Id='$_POST[$Id]'";

mysql_query("$aendern");






Will ich so die Datenbank updaten, so passiert gar nichts....
Der alte Eintrag bleibt vollständig bestehen.
 
folgendes ist immer gut:
CODE
mysql_query( ... ) or die( mysql_error() );



Nebenbei kannst du bei folgendem Code nicht davon ausgehen, dass du ein Komma setzen kannst (Angenommen Benzin ist empty und Super nicht):


CODE
if(!empty($_POST[$Super]))

{

$aendern .=", Super='$_POST[$Super]'";

}



Gruess,
Joel
 
die Abfrage würde ich so aufbauen:

CODE
$aendern="UPDATE tankstellen SET";

if(!empty($_POST[$Benzin]))

{

$aendern .=", Benzin='$_POST[$Benzin]'";

}

if(!empty($_POST[$Super]))

{

$aendern .=", Super='$_POST[$Super]'";

}

if(!empty($_POST[$SuperPlus]))

{

$aendern .=", SuperPlus='$_POST[$SuperPlus]'";

}

if(!empty($_POST[$Diesel]))

{

$aendern .=", Diesel='$_POST[$Diesel]'";

}

if(!empty($_POST[$BioDiesel]))

{

$aendern .=", BioDiesel='$_POST[$BioDiesel]'";

}

if(!empty($_POST[$SuperDiesel]))

{

$aendern .=", SuperDiesel='$_POST[$SuperDiesel]'";

}

if(!empty($_POST[$Gas]))

{

$aendern .=", Gas='$_POST[$Gas]'";

}
$aendern = substr($aendern, 2);
mysql_query("UPDATE tankstellen SET ".$aendern." Zeit='".$Zeit."', $aktiv='nein' WHERE Id='".$_POST[$Id]."'") or die (mysql_error());




so müssts gehen. damit hast du dann das Problemlos was Joel gemeint hat. (mysql error ist immer gut!
wink.gif
)
 
Zurück
Oben