2012-02-11 88 views
0

當用戶註冊時,我會如何將當前日期添加到數據庫(MySQL)中?我知道我需要在數據庫中添加一行(Join_date或者什麼),創建該行時我會設置什麼?時間戳? VARCHAR?插入用戶將數據加入數據庫

我想這樣做,當用戶提交註冊表單時,它會將當前日期添加到聯接日期行中。

任何幫助將不勝感激。

謝謝。

+0

'和'CURRENT_TIMESTAMP' DATETIME'默認值。我認爲在問這裏之前檢查MySQL語法會更好。 – MahanGM 2012-02-11 11:59:19

回答

1

假設結構

field  type 
++++++++++++++++++++++ 
id   INT 
username varchar(10) 
password varchar(10) 
date  datetime 

然後使用下面的查詢

INSERT INTO Table values (1,'username','password',NOW()) 

希望這有助於你...

1

列類型應該是datetime

,並在插入行,請使用NOW()查詢

+0

當用戶提交表單處於不同的地理位置時,那麼當前日期可能是數據庫服務器日期的+或-1。最好從前端獲取日期。 – Jayy 2012-02-11 12:04:34

+0

在這種情況下,您將如何檢查註冊的確切時間。假設管理員結束時區爲0,用戶端爲+1:00。 Id admin會檢查註冊時間,然後會顯示他未來的時間。 – Gaurav 2012-02-11 12:07:57

+0

所以根據我時間應存儲在UTC時區,併爲用戶的時區一個單獨的列 – Gaurav 2012-02-11 12:09:37

1

添加datetime列,然後用NOW()doc插入記錄時設置列。

0

這被問了很多次。

看到這個問題:Registration date。它的解決方案可以很好地使用;它會自動插入日期。

0

添加列TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP

0

假設你正在使用MySQL,你可以使用字段類型DATETIMETIMESTAMP

通常我使用DATETIME創建(「連接日期」)字段和TIMESTAMP爲lastupdated字段,因爲它可以(很容易)由更新時的RDBMS透明地填充。

要獲取當前日期,您可以使用mysql函數NOW()

例如:

INSERT INTO Users (`firstname`, `regdate`) VALUES ('herbie', NOW()); 
0

使該領域無論是MySQL內部l日期/時間類型(請參閱http://dev.mysql.com/doc/refman/5.5/en/date-and-time-types.html)並使用CURRDATE(http://dev.mysql.com/doc/refman/5.5/zh-cn/date-and-time-functions.html)來填充它,或者直接使用int並用時間()填充POSIX時間。 就我個人而言,我發現Unix時間戳更好,因爲它更容易操作,並且不依賴於數據庫的類型。

0

您可以使用這樣的代碼

INSERT INTO users (LastName, FirstName, DateColumn) 
VALUES ("firstname", "lastname", NOW())

NOW()將插入當前日期在DateColumn領域

0

試試這個:

INSERT INTO users (`LastName`, `FirstName`, `DateColumn`) 
VALUES ("Fname", "LNamee", NOW())