2012-02-11 10 views
0

ユーザー登録時にデータベース(MySQL)に現在の日付を追加するにはどうすればよいですか?私はデータベースに行を追加する必要があることを知っています(Join_dateなど)、その行を作成するときに何を設定しますか?タイムスタンプ? varchar?ユーザーをデータベースに追加する

ユーザーが登録フォームを送信すると、現在の日付が参加日の行に追加されます。

ご協力いただければ幸いです。

ありがとうございました。

+0

'CURRENT_TIMESTAMP'と' DATETIME'デフォルト値。ここで質問する前に、MySQL構文をチェックする方が良いと思います。 – MahanGM

答えて

1

と仮定構造が

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

はその後のいずれか、そのフィールドを作成し、クエリの下に、これはあなたを助け

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

希望...

1

カラム型はdatetime

ことと行を挿入しながら、datetimeカラムを追加し、レコードを挿入するときにカラムを設定するNOW()docを使用し、クエリ

+0

フォームを送信するユーザーが地理的に異なる場所にある場合、現在の日付はDBサーバーの日付から+または - 1になる可能性があります。フロントエンドから日付を取得する方が良いです。 – Jayy

+0

その場合、登録の正確な時期はどうやって確認しますか?管理終了タイムゾーンが0で、ユーザーの終了時に+1:00とします。 ID管理者は登録時間を確認してから、将来の時間を表示します。 – Gaurav

+0

私によれば、時間はUTCタイムゾーンで保存し、別の列はユーザ​​ーのタイムゾーンに保存する必要があります – Gaurav

1

NOW()を使用すべきです。

0

これは何度も尋ねられました。

この質問を参照してください:Registration date。その解決策はうまく使える。自動的に日付が挿入されます。

0

MySQLを使用していると仮定して、列TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP

0

を追加し、あなたはフィールドタイプDATETIMETIMESTAMPを使用することができます。

通常、私はそれが(簡単に)更新のRDBMSによって透過的に投入することができるので、フィールドとlastupdatedフィールドのTIMESTAMP(「参加日」)を作成するためにDATETIMEを使用しています。

mysql関数NOW()を使用して現在の日付を取得することができます。例えば

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

を使用していますMySQLのインターナショナル日付/時刻タイプ(http://dev.mysql.com/doc/refman/5.5/en/date-and-time-types.htmlを参照)を使用してCURRDATE(http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html)を使用して入力するか、単にintにしますPOSIX時間をtime()で埋める。 個人的には、Unixタイムスタンプは操作が簡単で、dbのタイプに依存しないので、より良いタイムスタンプを見つけることができます。

0

あなたが今この

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

のようなコードを使用することができます()DateColumnフィールドに現在の日付を挿入する

0

はこれを試してみてください。

INSERT INTO users (`LastName`, `FirstName`, `DateColumn`) 
VALUES ("Fname", "LNamee", NOW()) 
関連する問題