GetSQLValueString(isset($_POST['Mm_Interest']) ? "true" : "", "defined","'Y'","'N'"));
改成GetSQLValueString(join(",",$_POST['Mm_Interest']), "text"));
此行程式主要是將原本判斷表單元件[checkbox]是否勾選,若勾選擇資料值為"Y",相反則"N"。因皆是相同名稱的[checkbox],又須將選取值都寫入資料庫,所以改成 [陣列] 的方式儲存資料;不過若將 [陣列]資料直接寫入資料庫,則可能會在表單資料送出並寫入指定資料表後,才發現記載的資料從原本的 [Y} 變成 [Array]。
因為它是陣列資料值的變數,所以須將資料讀出來後,再做轉存的動作,可以採用「join()」這個由PHP提供的函數;
語法: join("連接的字串","要讀取的陣列變數名稱")
以「興趣」為例,其變數名稱為 $M_interest,則可寫成join(",", $M_interest)
使用「,」連接「$M_interest」陣列資料值,因修改後DW無法判斷程式法是否由它自己產生,故「伺服器行為」之「插入記錄」會消失。
沒有留言:
張貼留言