У меня проблемы с правильной вставкой даты в мою базу данных.
$date = date('m/d/Y h:i:s', time());
Я использую этот формат, и он правильно отображается, однако, когда я вставляю
mysql_query("INSERT INTO table
(dateposted)
VALUES ('$date')");
похоже, он не работает успешно, и время остается 00:00:00. Если бы вы могли найти решение, которое было бы отличным, спасибо.
Ответы:
Если вы хотите сохранить текущее время, просто используйте функции 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')");
источник
UTC_TIMESTAMP()
( dev.mysql.com/doc/refman/5.5/en/… ) предпочтительнее вместоNOW()
Попробуйте вместо этого
$date = date('Y-m-d H:i:s');
источник
вы можете использовать CURRENT_TIMESTAMP, функцию mysql
источник
NOW()
используется для вставки текущей даты и времени в таблицу MySQL. Все поля с типами данныхDATETIME, DATE, TIME & TIMESTAMP
хорошо работают с этой функцией.ГГГГ-ММ-ДД ЧЧ: мм: СС
Демонстрация:
Следующий код показывает использование
NOW()
INSERT INTO auto_ins (MySQL_Function, DateTime, Date, Time, Year, TimeStamp) VALUES (“NOW()”, NOW(), NOW(), NOW(), NOW(), NOW());
источник
задайте
type
столбец с именемdateposted
какDATETIME
и выполните следующий запрос:INSERT INTO table (`dateposted`) VALUES (CURRENT_TIMESTAMP)
источник
" datetime " ожидает, что дата будет сформирована следующим образом: ГГГГ-ММ-ДД ЧЧ: ММ: СС
поэтому отформатируйте дату таким образом, когда вы вставляете.
источник
<?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">
источник
Если вы передаете дату из PHP, вы можете использовать любой формат с помощью
STR_TO_DATE()
функции mysql. Пусть вы вставляете дату через html-форму$Tdate = "'".$_POST["Tdate"]."'" ; // 10/04/2016 $Tdate = "STR_TO_DATE(".$Tdate.", '%d/%m/%Y')" ; mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$Tdate')");
dateposted
Должен быть MySQLdate
типа. или 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')" ;
источник
Лучший способ сделать это проще и эффективнее:
CREATE TABLE table_name ( field1, .. .. time_updated timestamp default current_timestamp )
Теперь, когда вы вставляете строку в таблицу, вы можете пропустить это поле (
time_updated
), так как оно заполнится текущим временем как значением по умолчанию.источник
Просто используйте с вашим часовым поясом:
date_default_timezone_set('Asia/Kolkata'); $date=date("Y/m/d h:i:sa");
источник
$ date = date ('Ymd H: i: s'); с типом: 'datetime' мне очень понравилось, так как я хотел напечатать всю дату и время ..
$ date = date ('Ymd H: i: s'); $ stmtc-> bindParam (2, $ date);
источник
Это зависит от того, какой тип данных вы установили для своей таблицы db.
DATETIME (тип данных)
MYSQL
PHPINSERT INTO t1 (dateposted) VALUES ( NOW() ) // This will insert date and time into the col. Do not use quote around the val
$dt = date('Y-m-d h:i:s'); INSERT INTO t1 (dateposted) VALUES ( '$dt' ) // This will insert date into the col using php var. Wrap with quote.
ДАТА (тип данных)
MYSQL
PHPINSERT INTO t1 (dateposted) VALUES ( NOW() ) // Yes, you use the same NOW() without the quotes. // Because your datatype is set to DATE it will insert only the date
$dt = date('Y-m-d'); INSERT INTO t1 (dateposted) VALUES ( '$dt' ) // This will insert date into the col using php var.
ВРЕМЯ (тип данных)
MYSQL
PHPINSERT INTO t1 (dateposted) VALUES ( NOW() ) // Yes, you use the same NOW() as well. // Because your datatype is set to TIME it will insert only the time
$dt = date('h:i:s'); INSERT INTO t1 (dateposted) VALUES ( '$dt' ) // This will insert time.
источник
Я считаю, что вам нужно немного изменить свой код, как показано ниже, вместе с типом поля базы данных.
mysql_query("INSERT INTO table (`dateposted`) VALUES ($datetime)");
Надеюсь, сработает отлично.
источник
использовать это
$date = date('m/d/Y h:i:s', time());
а затем в MYSQL выполните
type=varchar
тогда дата и время будут успешно вставлены
источник
Попробуй это
$('#datepicker2').datepicker('setDate', new Date('<?=$value->fecha_final?>'));
источник