|
|
|
| Доброго дня всем форумчанам! Такой вопрос:имеется HTML форма в которой в тегах select вводится время начала рабочей смены в формате 07:00 или 07:30 например и соответсвенно так же конец смены. От скрипта требуется посчитать кол-во часов смены. Проблема в том что надо каким то образом переделать время в формат который можно посчитать,как это делается,помогите пожалуйста... я пробовал с помощью регулярных выражений но не фига не вышло. | |
|
|
|
|
|
|
|
для: varvar
(01.09.2008 в 15:45)
| | я вижу два варианта
в селекте указывать время в секундах, в минутах - как удобнее, в данном случае указано в секундах
<select>
<option value="27000">07:30</option>
</select>
|
и при обработке считать разницу и переводить секунды в часы
или в value option оставить время в виде 07:30
если все время в этом формате вы можете при обработке делать следущее
<?php
$begin = explode(":", $_POST['begin']);
$end = explode(":", $_POST['end']);
$raznica = (($end[0]*60+$end[1])-($begin[0]*60+$begin[1]))/60;
?>
|
| |
|
|
|
|
|
|
|
для: Balamut182
(01.09.2008 в 15:56)
| | Спасибо! Попробую и отпишусь) | |
|
|
|
|
|
|
|
для: varvar
(01.09.2008 в 16:04)
| | Если вам часы и минуты, то время в опшенах лучше держать в минутах, тогда:
<?
$start = 420; //начало смены
$end = 750; //конец смены
echo floor(($end - $start)/60).":".($end - $start) % 60; //продолжительность час:мин
|
А перерыв на обед учитывать? :) | |
|
|
|
|
|
|
|
для: sim5
(01.09.2008 в 16:20)
| | не,обед не важен... а floor это то же что и explode ? | |
|
|
|
|
|
|
|
для: varvar
(01.09.2008 в 17:11)
| | floor | |
|
|
|
|
|
|
|
для: sim5
(01.09.2008 в 17:27)
| | понял,спасибо! | |
|
|
|