Я хотел бы найти способ рассчитать разницу между двумя датами и отобразить результат, прежде чем я отправлю форму. Это будет похоже на регистрацию в выпадающих списках в желтом/оранжевом поле в http://www.booking.com/, где при выборе даты сразу же отображается количество ночей.рассчитать и отобразить разницу между 2 датами перед отправкой формы
HTML версия коды, как показан в JS Fiddle: http://jsfiddle.net/chri_chri/xy2gpa02/2/
Код, используемой для создания выпадающего выбора даты
<?php
// displays days with leading 0s
$options = array();
for ($i=1; $i<32; $i++) {
$theday = date('d', mktime(0,0,0,0,$i,2000));
$sel = ($i == date('d') ? 'selected="selected"' : '');
$options[] = "<option value= \"{$theday}\" {$sel}>{$theday}
</option>";
}
$options_list = join("\r\n", $options);
echo "<div class='select' id='date'><select class=\"short-input\" name=\"day_from\">{$options_list}</select></div>";
?>
<?php
$options = array();
for ($i = 1; $i<13; $i++) {
$themonth = date('F', mktime(0,0,0,$i,2, 2000));
$month = date('m', mktime(0,0,0,$i,2,2000));
$sel =($i == date('n') ? ' selected="selected"' : '');
$options[] = "<option value=\"{$month}\" {$sel}>{$themonth}
</option>";
}
$options_list = join("\r\n", $options);
echo "<div class='select' id='month'><select class=\"short-input\" name=\"month_from\" size=\"1\">{$options_list}</select></div>";
?>
<?php
/* build selection list for the year */
$today = time(); // stores today's date
$startYr = date("Y", $today); // get the year from $today
echo "<div class='select' id='year'>
<select class='short-input' name='year_from'>\n";
for ($year=$startYr;$year<=$startYr+10;$year++)
{
echo " <option value= $year";
if ($startYr == $year)
{
echo "";
}
echo " > $year</option>\n";
}
echo "</select>\n</div>\n";
?>
Что PHP версии вы используете? Если это> = 5.2, вы можете рассмотреть возможность использования объектов [DateTime] (http://php.net/manual/en/class.datetime.php) –
Как я могу проверить? – Christa
Если локальный, открытый терминал/cmd и введите 'php -v' –