Вставить текущую дату в формате даты и времени mySQL

У меня возникают проблемы с правильной установкой даты в моей базе данных.

$date = date('m/d/Y h:i:s', time());

Я использую этот формат, и, однако, он отгоняет правильно, когда, я вставляю

mysql_query("INSERT INTO table 
(dateposted) 
VALUES ('$date')");

он не работает успешно, и время остается 00:00:00 Если бы вы могли найти решение, которое было бы здорово, спасибо.

Ответ 1

Если вы хотите сохранить текущее время, просто используйте функции MYSQL.

mysql_query("INSERT INTO `table` (`dateposted`) VALUES (now())");

Если вам нужно использовать PHP для этого, формат Y-m-d H:i:s, попробуйте

$date = date('Y-m-d H:i:s');
mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$date')");

Ответ 2

Попробуйте это вместо

$date = date('Y-m-d H:i:s');

Ответ 3

NOW() используется для вставки текущей даты и времени в таблицу MySQL. Все поля с datatypes DATETIME, DATE, TIME & TIMESTAMP работают хорошо с этой функцией.

ГГГГ-ММ-ДД ЧЧ: мм: SS

Демонстрация:

В следующем коде показано использование NOW()

INSERT INTO auto_ins
(MySQL_Function, DateTime, Date, Time, Year, TimeStamp)
VALUES
("NOW()", NOW(), NOW(), NOW(), NOW(), NOW());

Ответ 4

вы можете использовать CURRENT_TIMESTAMP, функцию mysql

Ответ 5

" datetime" ожидает, что дата будет сформирована следующим образом: ГГГГ-ММ-ДД ЧЧ: ММ: СС

так что форматируйте свою дату, когда вы вставляете.

Ответ 6

установите type столбца с именем dateposted как DATETIME и выполните следующий запрос:

INSERT INTO table (`dateposted`) VALUES (CURRENT_TIMESTAMP)

Ответ 7

     <?php $date= date("Y-m-d");
$time=date("H:m");
$datetime=$date."T".$time;
mysql_query(INSERT INTO table (`dateposted`) VALUES ($datetime));
?>

<form action="form.php" method="get">
<input type="datetime-local" name="date" value="<?php echo $datetime; ?>">
<input type="submit" name="submit" value="submit">

Ответ 8

Я считаю, вам нужно немного изменить свой код, как показано ниже, вместе с типом базы данных.

mysql_query("INSERT INTO table (`dateposted`) VALUES ($datetime)");

Надежда, будет работать отлично.

Ответ 9

Если вы передаете дату с PHP, вы можете использовать любой формат с помощью функции STR_TO_DATE() mysql. Пусть conseder вы вставляете дату через html-форму

$Tdate = "'".$_POST["Tdate"]."'" ;    //   10/04/2016
$Tdate = "STR_TO_DATE(".$Tdate.", '%d/%m/%Y')"  ;  
mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$Tdate')");

dateposted должен быть типом mysql date. или mysql добавит 00:00:00
в некоторых случаях лучше вставить дату и время вместе в БД, чтобы вы могли выполнять вычисления с часами и секундами.().

$Tdate=date('Y/m/d H:i:s') ; // this to get current date as text .
$Tdate = "STR_TO_DATE(".$Tdate.", '%d/%m/%Y %H:%i:%s')"  ;  

Ответ 10

Лучший способ сделать это проще и эффективнее:

CREATE TABLE table_name (
field1,
..
..
time_updated timestamp default current_timestamp
)

Теперь, когда вы вставляете строку в таблицу, вы можете пропустить это поле (time_updated), поскольку оно будет заполняться текущим временем как значение по умолчанию

Ответ 11

Просто используйте ваш часовой пояс:

date_default_timezone_set('Asia/Kolkata');      
$date=date("Y/m/d h:i:sa");

Ответ 12

используйте этот

$date = date('m/d/Y h:i:s', time());

а затем в MYSQL do

type=varchar

то дата и время будут успешно вставлены

Ответ 13

Попробуйте это

$('#datepicker2').datepicker('setDate', new Date('<?=$value->fecha_final?>'));