2014-01-14 2 views
0

Я пытаюсь вставить время, которое в формате "Tue, 14 Jan 2014 19:56:09 +0530" с помощью QueryНевозможно вставить время в базе данных с использованием MYSQL запроса

INSERT INTO monitor (Date, Name) VALUES ('$Date','$Name') "; 
    mysql_query($query) or die ("query failed"); 

Этого запроса выполняться без каких-либо ошибок, но когда я смотрю в значение вставленного было установлено, что значение времени в другом, отличном от того, что находится в $Date, введенное значение: "0000-00-00 00:00:00" кроме "Tue, 14 Jan 2014 19:56:09 +0530". Является ли их все, что я делаю неправильно.

ответ

5
  1. Вам необходимо отформатировать его, используя STR_TO_DATE() встроенный с INSERT. Например, SELECT STR_TO_DATE('01,5,2013','%d,%m,%Y'); ... Используйте спецификаторы в: this table
  2. Please, don't use mysql_* functions in new code. Они больше не поддерживаются and are officially deprecated. См. red box? Узнайте о prepared statements вместо этого, и используйте PDO или MySQLi - this article поможет вам решить, какой.
  3. У вас нет обработчиков ошибок
+0

mysql_ функция не имеет ничего общего с ошибкой – Alexxus

+0

@Alexxus вы намекаете OP должен продолжать использовать 'функцию mysql_'? – Kermit

+0

True @Alexxus, но это отличный совет. Это стандартная практика здесь, в StackOverflow, чтобы предупредить людей, когда они открываются для проблем с SQL Injection, которые могут стать приверженцами карьеры. –

Смежные вопросы