У меня возникают проблемы с правильной установкой даты в моей базе данных.
$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 для этого, формат Ymd H:i:s
попробуйте
$date = date('Ymd H:i:s'); mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$date')");
Попробуйте это вместо этого
$date = date('Ymd H:i:s');
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());
вы можете использовать CURRENT_TIMESTAMP, функцию mysql
« datetime » ожидает, что дата будет сформирована следующим образом: ГГГГ-ММ-ДД ЧЧ: ММ: СС
поэтому отформатируйте свою дату таким образом, когда вы вставляете.
установите type
столбца с именем dateposted
как DATETIME
и выполните следующий запрос:
INSERT INTO table (`dateposted`) VALUES (CURRENT_TIMESTAMP)
<?php $date= date("Ymd"); $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">
Я считаю, вам нужно немного изменить свой код, как показано ниже, вместе с типом базы данных.
mysql_query("INSERT INTO table (`dateposted`) VALUES ($datetime)");
Надежда, будет работать отлично.
Если вы передаете дату с 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
должен быть типом date
mysql. или 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/dh:i:sa");
использовать это
$date = date('m/d/Y h:i:s', time());
а затем в MYSQL
type=varchar
то дата и время будут успешно вставлены
Попробуй это
$('#datepicker2').datepicker('setDate', new Date('<?=$value->fecha_final?>'));