Heya,
ich habe derzeit ein Problem mit dem Umgang mit "leeren" Datenbankfeldern.
Derzeit benutze ich den Ausdruck
if (isset($currententry['reviewen3name'])
Das funktioniert auch, zumindest solange, wie ich die Einträge in der Datenbank manuell eingetragen habe. Das heisst die leeren Felder weiterhin auf NULL stehen.
Sobald ich allerdings eine Variable an die Datenbank schicke (auch wenn diese leer ist), dann wird der eintrag von NULL auf einen leeren String gesetzt (oder auf 0 im Falle von Integer).
Meine Frage ist nun, wie ich entweder vermeiden kann, das dieser NULL Wert mit "nichts" überschrieben wird, zumal sich da bei mir ein ganzer Batzen an variablen angesammelt hat und ich nicht weiss, ob es so clever ist da jede einzelne zu "bearbeiten", oder ob es da eine (einfache) möglichkeit gibt, den isset Befehl irgendwie soweit auszudehnen, dass er auch prüft ob die Variable einen "realen" wert hat.
Hier noch ein Code Schnipsel zum Eintrag in die DB:
Relevant sind, wie man dem ersten Code Schnipsel entnehmen kann vor allem die Variablen reviewXYZname.
ich habe derzeit ein Problem mit dem Umgang mit "leeren" Datenbankfeldern.
Derzeit benutze ich den Ausdruck
if (isset($currententry['reviewen3name'])
Das funktioniert auch, zumindest solange, wie ich die Einträge in der Datenbank manuell eingetragen habe. Das heisst die leeren Felder weiterhin auf NULL stehen.
Sobald ich allerdings eine Variable an die Datenbank schicke (auch wenn diese leer ist), dann wird der eintrag von NULL auf einen leeren String gesetzt (oder auf 0 im Falle von Integer).
Meine Frage ist nun, wie ich entweder vermeiden kann, das dieser NULL Wert mit "nichts" überschrieben wird, zumal sich da bei mir ein ganzer Batzen an variablen angesammelt hat und ich nicht weiss, ob es so clever ist da jede einzelne zu "bearbeiten", oder ob es da eine (einfache) möglichkeit gibt, den isset Befehl irgendwie soweit auszudehnen, dass er auch prüft ob die Variable einen "realen" wert hat.
Hier noch ein Code Schnipsel zum Eintrag in die DB:
PHP-Code:
if (isset($_GET["edit"]))
{
$edit = $_GET["edit"];
echo $edit;
}
if ($edit== "delete")
{
$object = $_GET["object"];
$command="DELETE FROM movies WHERE object_ID=$object";
$bool=mysql_query($command);
if($bool==1) echo "<center><b>DELETED</b></center>";
if($bool<>1) echo "<SCRIPT LANGUAGE=JavaScript>window.alert('Error while deleting')</SCRIPT>";
}
if ($edit== "insert")
{
$name_de = $_GET["name_de"];
$name_en = $_GET["name_en"];
$genre_de = $_GET["genre_de"];
$genre_en = $_GET["genre_en"];
$releasedate = $_GET["releasedate"];
$amazonde = $_GET["amazonde"];
$amazoncouk = $_GET["amazoncouk"];
$amazonus = $_GET["amazonus"];
$titledir = $_GET["titledir"];
$reviewde1name = $_GET["reviewde1name"];
$reviewde1link = $_GET["reviewde1link"];
$reviewde1rating = $_GET["reviewde1rating"];
$reviewde2name = $_GET["reviewde2name"];
$reviewde2link = $_GET["reviewde2link"];
$reviewde2rating = $_GET["reviewde2rating"];
$reviewde3name = $_GET["reviewde3name"];
$reviewde3link = $_GET["reviewde3link"];
$reviewde3rating = $_GET["reviewde3rating"];
$reviewen1name = $_GET["reviewen1name"];
$reviewen1link = $_GET["reviewen1link"];
$reviewen1rating = $_GET["reviewen1rating"];
$reviewen2name = $_GET["reviewen2name"];
$reviewen2link = $_GET["reviewen2link"];
$reviewen2rating = $_GET["reviewen2rating"];
$reviewen3name = $_GET["reviewen3name"];
$reviewen3link = $_GET["reviewen3link"];
$reviewen3rating = $_GET["reviewen3rating"];
$command="INSERT INTO movies (
name_de,name_en,
genre_de,genre_en,
releasedate,
titledir,
amazon_de,amazon_couk,amazon_com,
reviewde1name,reviewde1link,reviewde1rating,
reviewde2name,reviewde2link,reviewde2rating,
reviewde3name,reviewde3link,reviewde3rating,
reviewen1name,reviewen1link,reviewen1rating,
reviewen2name,reviewen2link,reviewen2rating,
reviewen3name,reviewen3link,reviewen3rating
) VALUES (
'$name_de','$name_en',
'$genre_de','$genre_en',
'$releasedate',
'$titledir',
'$amazonde','$amazoncouk','$amazonus',
'$reviewde1name','$reviewde1link','$reviewde1rating',
'$reviewde2name','$reviewde2link','$reviewde2rating',
'$reviewde3name','$reviewde3link','$reviewde3rating',
'$reviewen1name','$reviewen1link','$reviewen1rating',
'$reviewen2name','$reviewen2link','$reviewen2rating',
'$reviewen3name','$reviewen3link','$reviewen3rating'
)";
$bool=mysql_query($command);
if($bool==1) echo "<center><b>INSERTED</b></center>";
if($bool<>1) echo "<SCRIPT LANGUAGE=JavaScript>window.alert('Error while inserting')</SCRIPT>";
}
Kommentar