Ein kleiner Test, den ich innerhalb des Skripts durchgeführt habe, hat nun deutlich ergeben, dass $product_disc null ist. Der Test:
Code: Select all
if ($product_disc == null)
{$test="null";}
else {$test="not null";}
Code: Select all
$return_array['success'] = array ('test' => $test);
Daher komme ich zu dem Schluss, dass $product_disc einen Wert hat: null
Jetzt verwende ich in meinem Skript den folgenden Code, um Daten in die MySQL-Datenbank einzufügen:
Code: Select all
$stmt = mysqli_prepare($link, "INSERT INTO set_products (id,discount) VALUES (NULL , ?)");
mysqli_stmt_bind_param($stmt, "i", $product_disc);
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
Nur wenn ich explizit hinzugefügt habe: $product_disc=null; Vor den MySqli-Anweisungen war der eingefügte Wert NULL.
Warum ist das so? Was ist der Unterschied zwischen einer Null und einer Null? Ich folgte dieser Antwort in Stack Overflow in der Hoffnung, dass ich problemlos NULL-Werte einfügen könnte, aber dann kam dieses Problem ...
Mobile version