2011-08-22 133 views
0

從NULL插入NULL到MySql如果它是0.00,我使用if語句將變量賦值爲數值或向其寫入NULL。如果語句爲

當從我的PHP頁面寫入MySQL時,我試圖傳遞此值,並且它始終爲NULL寫入0.00。我猜這是因爲我的插入語句發送.$price.,它認爲它在引號中?

如果我在插入之前回顯$price,它會告訴我它是NULL,但在插入語句之後,它永遠不會保留。

如何插入NULL ..因爲我必須使用一個變量併發送一個值(如果有的話)?

+0

'field_name' = null – EKet

回答

2

要插入NULL到您的表中,您需要將字符串"NULL"傳遞到您的查詢中,而不是PHP NULL的值。一個PHP NULL,如果用單引號括起來並傳遞給查詢,將被解釋爲0

// If $price is NULL in PHP, set it to the string "NULL" 
// Otherwise, set it to the current value of $price, but enclosed in single quotes as '$price' 
$price = $price === NULL ? "NULL" : "'$price'"; 

// Then $price gets passed to your query either as NULL or as the single-quoted $price 
mysql_query("INSERT INTO tbl (price) VALUES ($price);"); 

當然,你已經呼籲$price = mysql_real_escape_string($price);這之前...

+0

THANK YOU !!!我知道了。 :) – Andi

0

很難說,你不要發佈任何定義或代碼,但可能你的表不允許NULL,等等它默認爲該類型的「零」值。