2016-12-23 5 views
0

Ситуация:PHP Дата не Вставка с правильным форматом

Попытка выполнить запрос, чтобы вставить userID и Date в MySQL вызывает идентификатор пользователя для вставки и даты, чтобы показать 0000-00-00.

Код:

$stdb->insert('sleep', array('userid'=>$userid,'date'=>date("Y-m-d")), array('%s','%d')); 

Использование:

Wordpress с обычаем WPDB Класс

У меня есть другие вопросы, которые работают, которые подобны (больше данных представляется разница), и они работают с этой функциональностью кода.

Я написал date("Y-m-d") к полеганию и выходит 2016-12-23

регистрация ошибок не возвращают ошибки и база данных настроены для Даты форматирования в колонке MySQL.

Что я могу пропустить?

+0

При вводе дат в MySQL требуется, чтобы вы избежали значения. Таким образом, вам нужно поставить '' 'до и после 'date (« Y-m-d »)'. – Hicaro

ответ

0

Я понял вопрос, дата («ГМД») секция была прекращения дата после первого - изменив его на дату («Ymd»), я смог правильно увидеть реле даты в базе данных.

0

Вы попробовали кастинг в unix-времени перед отправкой? Попробуйте изменить:

'date'=>date("Y-m-d")) в date()

Если предположить, что децибел синхронизируется с PHP дату/время, вы могли бы просто использовать now()

+1

Почему не просто 'time()' then? – miken32

+0

Почему бы и нет, это гораздо лучший ответ ... Хотя я думаю, что лучшим способом было бы использовать mysql для timestamp. Пока оба раза синхронизируются – atoms

+0

Это не имеет значения, поскольку он говорит в вопросе о том, что столбец является DATE. – miken32

0

Для ввода даты из php и mysql вы можете использовать этот код.

<?php 
date_default_timezone_set("Asia/Calcutta"); 
$date = date("d-m-y"); 

$sql = "INSERT INTO disp_time(userId, date) VALUES ('username','$date')"; 

if($link->query($sql)){ 
    echo "Query Successfully inserted"; 
} 
else 
{ 
    echo "Failed to insert".$sql."<br>".$link->error; 
} 
?> 
Смежные вопросы