โดยปกติคุณจะเพิ่มค่าปกติให้กับ mySQL จาก PHP ดังนี้:
function addValues($val1, $val2) {
db_open();
$query = "INSERT INTO uradmonitor (db_value1, db_value2) VALUES ('$val1', '$val2')";
$result = mysql_query($query);
db_close();
}
เมื่อค่าของคุณว่างเปล่า / null ($ val1 == "" หรือ $ val1 == NULL) และคุณต้องการให้ NULL ถูกเพิ่มลงใน SQL ไม่ใช่ 0 หรือสตริงว่างให้เป็นดังต่อไปนี้:
function addValues($val1, $val2) {
db_open();
$query = "INSERT INTO uradmonitor (db_value1, db_value2) VALUES (".
(($val1=='')?"NULL":("'".$val1."'")) . ", ".
(($val2=='')?"NULL":("'".$val2."'")) .
")";
$result = mysql_query($query);
db_close();
}
โปรดทราบว่าต้องเพิ่ม null เป็น "NULL" และไม่ใช่ "" NULL " ต้องเพิ่มค่าที่ไม่ใช่ค่าว่างเป็น "'". $ val1. "'" เป็นต้น
หวังว่านี่จะช่วยได้ฉันต้องใช้สิ่งนี้สำหรับตัวบันทึกข้อมูลฮาร์ดแวร์บางตัวบางตัวเก็บอุณหภูมิและรังสีส่วนรังสีอื่น ๆ เท่านั้น สำหรับผู้ที่ไม่มีเซ็นเซอร์อุณหภูมิฉันต้องการค่า NULL และไม่ใช่ 0 ด้วยเหตุผลที่ชัดเจน (0 เป็นค่าอุณหภูมิที่ยอมรับได้เช่นกัน)