2012-12-02 18 views
17

Tôi không thể tin rằng tôi không thể làm điều này, nhưng tôi muốn có thể lưu trữ ngày và giờ hiện tại từ php vào bảng mysql.Store datetime php trong cơ sở dữ liệu mysql

Cột trong bảng là loại ngày giờ. Tôi đã thử này

$current_date = date("Y-m-d"); 
$my_date = strtotime($current_date); 
INSERT INTO my_table (date_time) VALUES ('$my_date') 

nhưng dấu thời gian của tôi đi lên như 0000-00-00 00:00:00

này phải dễ dàng như vậy để làm nhưng tôi chỉ không thể có được nó làm việc! Tôi muốn sử dụng dấu thời gian từ php thay vì sử dụng hàm mysql now()

+1

nếu trường mysql là 'DATETIME', hãy thả lệnh gọi' strtime' –

Trả lời

15

Không lưu dấu thời gian đó làm Dấu thời gian Unix (trong đó đầu ra strtotime()), nhưng dưới dạng "2012-12-02 13:00" cột DATETIME.

+3

Xin cảm ơn các bạn, tôi cảm thấy rất câm! – Damian

31

Hãy thử điều này:

$my_date = date("Y-m-d H:i:s"); 
INSERT INTO my_table (date_time) VALUES ('$my_date'); 

Trong các tham số ngày định dạng của hàm ngày, sử dụng:
'H' cho định dạng 24 giờ
'h' cho định dạng 12hr

1

Tạo loại cột TIMESTAMP và đặt nó thành NOT NULL. Sau đó vượt qua trong NULL trong INSERT và MySQL sẽ chèn ngày tháng và thời gian hiện tại. Điều này làm việc cho tôi.

1

thiết lập các 'loại' của cột có tên 'DATE_TIME' là 'DATETIME' và chạy các truy vấn sau đây:

INSERT INTO my_table (`date_time`) VALUES (CURRENT_TIMESTAMP) 
0

Tháo strtotime()

$current_date = date("Y-m-d"); 
INSERT INTO my_table (date_time) VALUES ('$current_date') 

Nếu bạn muốn bao gồm giờ, phút và giây, $ current_date = ngày ("Y-m-d H: i: s");

Các vấn đề liên quan