2012-01-29 35 views
1

我試圖從Mysql數據庫檢索日期到我的HTML表單爲了編輯記錄,現在我用來插入日期到數據庫的方式得到年 - 月 - 日從每一個列表,然後他們團結在一個變量是這樣的:從Mysql檢索日期,並將其泄漏到特定列表

$dob = $_POST['Year'] . '-' . $_POST['Month'] . '-' .$_POST['Day']; 

這將在我的表中插入的$dob值這樣的格式0000-00-00

的問題是,我將如何檢索這個變量並將它的每個元素分解到它的具體列表

是我的嘗試似乎無用,錯誤的是這個代碼

$row['userDateOfBirth'] = $year . '-' . $month . '-' . $day ; 

然後把每個變量(例如:年)

<option value="1920" selected="selected"><? echo $year ; ?></option> 

這個沒有工作,我怎麼能做到這一點?

回答

1

假設你有一個實際的日期/時間字段,你可以做分裂MySQL中:

SELECT YEAR(datefield), MONTH(datefield), DAY(datefield), etc... 

,讓你包含各個日期組件三個獨立的領域。你也可以在PHP中使用explode('-', $datestr)這樣的東西來將'yyyy-mm-dd'分解成單獨的yyyy,mm和dd塊。

很多選擇,這取決於你選擇哪一個最容易/最適合你的特定問題。

+0

謝謝你,這是$ datestr是我提取的變量? – 2012-01-29 02:35:44

+0

是的,它是.... – 2012-01-29 02:36:48

+0

非常感謝你,它工作:),我爆炸取出的變量,然後將值分配給一個數組。 – 2012-01-29 02:40:03

1

你可以在客戶端(php)端處理。

$year = date('Y', strtotime($row['userDateOfBirth'])); 

,如果你有一個無效的日期,$今年將有1970

0

你可以使用

$row['userDateOfBirth'] = date("Y-m-d", strtotime($mysqlResultRow['dateField'])); 

哪裏基本上你說日期()函數返回一個格式化字符串的時間傳遞給它,在這種情況下通過strtotime()創建。

Date() reference。以上示例返回「2000-01-01」中的日期,請參閱爲項目選擇適當格式的參考。

相關問題