有沒有一種方法來設置一個IF語句在MySQL和PHP寫的東西到列或不?我想要做的是完全跳過一列,以便寫入「NULL」,以防列中沒有要提交的數據。設置IF語句寫的東西與否,一個列在MySQL
如果沒有在一列被提交到數據庫中,我希望它是NULL該記錄明顯。現在,在沒有數據的每一列中,它只是空的。
我可以ofcourse設置一個完全新的變量,新的查詢和所有的,只是跳過查詢該列,但對我來說,這將會是噸以上(可能)不必要的代碼。
有沒有一種方法來設置一個IF語句在MySQL和PHP寫的東西到列或不?我想要做的是完全跳過一列,以便寫入「NULL」,以防列中沒有要提交的數據。設置IF語句寫的東西與否,一個列在MySQL
如果沒有在一列被提交到數據庫中,我希望它是NULL該記錄明顯。現在,在沒有數據的每一列中,它只是空的。
我可以ofcourse設置一個完全新的變量,新的查詢和所有的,只是跳過查詢該列,但對我來說,這將會是噸以上(可能)不必要的代碼。
好吧,你想要的信息,所以在這裏我們去...
現在看起來是這樣的:
$query = "INSERT INTO requests (Ex1, Ex2, Ex3, Ex4, Ex5, Ex6) VALUES ('".$Ex1."', '".$Ex2."', '".$Ex3."', '".$Ex4."', '".$Ex5."', '".$Ex6."')";
我要插入的情況下,東西「實例3」有數據要插入,否則,我基本上不想在查詢中包含要提交給該列的列或數據。
插入空不加引號插入變量。
INSERT INTO table (col1, col2) VALUES ($val1, $val2);
PHP的快速位可加引號:
foreach($_POST as $key=>$value) {
if($vaule == '') $_POST[$key] = 'NULL';
else $_POST[$key] = "'".$value."'";
}
但你應該檢查並在其上驗證數據的路無論如何,所以通常以上PHP是太簡單了。但是,請將引號關閉,只將其添加到實際值中。您可以設置一個函數進行驗證,在使用之前清理並向所有數據添加引號。
你的情況的更多的解釋,你給,你甚至可能有人可能只是給你所需要的代碼。 – 2010-07-03 22:49:12