2013-09-26 2 views
0

Я пытаюсь записать время (часы: минуты: сек), выбранные пользователем через форму select. Другие данные, отправленные через форму, правильно введены в базу данных, но «время начала» записывается как 0000-00-00 00:00:00.Время не записывается в базу данных mysql

Пользователь выбирает время начала здесь:

<p >Start time (24hrs): 
<span class="right"> 
Hour: 
<select name="event-start-time-hours" class="event-time"> 
    <option value="01">01</option> 
    <option value="02">02</option> 
    <option value="03">03</option> 
    <option value="04">04</option> 
    <option value="05">05</option> 
    <option value="06">06</option> 
    <option value="07">07</option> 
    <option value="08" selected>08</option> 
    <option value="09">09</option> 
    <option value="10">10</option> 
    <option value="11">11</option> 
    <option value="12">12</option> 
    <option value="13">13</option> 
    <option value="14">14</option> 
    <option value="15">15</option> 
    <option value="16">16</option> 
    <option value="17">17</option> 
    <option value="18">18</option> 
    <option value="19">19</option> 
    <option value="20">20</option> 
    <option value="21">21</option> 
    <option value="22">22</option> 
    <option value="23">23</option> 
    <option value="24">24</option> 
</select> 
    Min: 
<select name="event-start-time-mins" class="event-time"> 
    <option value="00" selected >00</option> 
    <option value="05">05</option> 
    <option value="10">10</option> 
    <option value="15">15</option> 
    <option value="20">20</option> 
    <option value="25">25</option> 
    <option value="30">30</option> 
    <option value="35">35</option> 
    <option value="40">40</option> 
    <option value="45">45</option> 
    <option value="50">50</option> 
    <option value="55">55</option> 
</select> 

и записывается с помощью:

$event = new event($_POST, $dbh); 
// Record Event to database 
$event->setEvent(); 

я форматировать время начала в методе SetEvent() следующим образом:

// format start time 
$stime = mktime($_POST['event-start-time-hours'], $_POST['event-start-time-mins'], 0); 
$eventStartTime = date("H:i:s", $stime); 

и свяжите переменную типа os:

$stmt->bindParam(11, $eventStartTime); 

Который коррелирует с правильным столбцом в таблице.

Так почему же это не указано в поле datetime?

ответ

1

Тип объекта в БСО составл .: DateTimeTime. Он будет работать.

1

установить поле даты и время, чтобы TIMEFIELD только и он будет работать

Когда Тринг, чтобы сохранить данные в поле, которое принимает данные в этом формате 0000-00-00 00:00:00, что означает гггг-мм -dd hh: mm: ss, если вы хотите сохранить только данные времени, затем измените тип столбца поля на время.

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