2013-12-04 2 views
-2

У меня есть таблица, в которой есть два поля с типами данных даты. У меня возникли трудности с вставки значения из формы с типом даты в эту таблицу.Как вставить дату из формы в таблицу с mysqli

РНР я использую для вставки:

$query = "INSERT INTO JOB_TBL(JT_JOB_DESCRIPTION_FLD, JT_JOB_TITLE_FLD, JT_JOB_POST_DATE_FLD, JT_JOB_CLOSE_DATE_FLD, JT_JOB_POSTER_FLD) 
       VALUES(?, ?, " . $open . "," . $close . ", ?)"; 

    if ($stmt = $this->conn->prepare($query)) { 
     $stmt->bind_param('ssi', $title, $desc, '1'); 

Форма HTML для тесного и открытого:

<input type="Date" name="jobOpen"> 
<input type="Date" name="jobClose"> 

не показано, где я передать полученные почтовые данные в функцию с запросом. Эти два поля являются одновременно полями даты без каких-либо других ограничений.

Я также пытался связать их как строки, но это не сработало.

спасибо.

UPDATE: две переменные в формате "2013-12-04"

+0

что делать и получить в $ открыто, $ близко? можете ли вы показать свои переменные сообщений? –

+0

Вы должны ВСЕГДА связывать любые данные, а не просто «попробовать». –

+0

Исходный код был связан, изменил его, так как я не был на 100% уверен, что дата была передана как строка (и пыталась решить проблему, когда страница ничего не делала, когда она была недовольна) –

ответ

-2

По умолчанию вход type="date" показывает даты как YYYY-MM-DD.

Вы можете принудительно установить его на отметку времени UNIX с помощью strtotime($open) и затем установить столбцы в тип INT (10) в базе данных.

Вы можете извлечь раз, используя функцию date() (http://php.net/manual/en/function.date.php)

Новый код

$open = strtotime($open); 
$close = strtotime($close); 
$query = "INSERT INTO JOB_TBL(JT_JOB_DESCRIPTION_FLD, JT_JOB_TITLE_FLD, JT_JOB_POST_DATE_FLD, JT_JOB_CLOSE_DATE_FLD, JT_JOB_POSTER_FLD) 
      VALUES(?, ?, " . $open . "," . $close . ", ?)"; 
Смежные вопросы