2015-11-05 61 views
0

好吧,這讓我瘋狂! 得到一個默認設置爲空的整數字段的MySQL表。 需要通過表單提交進行更新。如果表單字段爲空,則將數據庫字段設置爲NULL,否則將數據庫字段設置爲提交值。空X零問題

所以,在PHP中我有:(分段代碼,仍然需要消毒)

if($_POST['vendor-product'] != ''){ 
    $ms2VendorID = $_POST['vendor-product']; 
}else{ 
    $ms2VendorID = ''; 
} 

的問題是,而不是NULL進入零。我嘗試了幾種不同的方式,似乎沒有任何工作。

感謝您的任何幫助。

+0

如果您使用PDO或mysqli prepared語句,您應該能夠將PHP值'null'作爲值。 – Barmar

回答

0

爲什麼不把NULL(作爲字符串)賦值給else語句中的變量?

if($_POST['vendor-product'] != ''){ 
    $ms2VendorID = $_POST['vendor-product']; 
}else{ 
    $ms2VendorID = "NULL"; 
} 

此外,請確保該字段沒有啓用NOT NULL約束。

+0

已經嘗試過。不起作用。仍然在數據庫中得到零 – Lorenzo99

+0

@ Lorenzo99你檢查過該字段是否爲'NOT NULL'嗎? – taxicala

+0

只是檢查,而不是空IS不檢查。該字段的默認值爲NULL – Lorenzo99