У меня нет фона в PHP, но недавнему клиенту требуется некоторое обновление, поэтому я делаю все возможное. То, что я пытаюсь выполнить, - это сначала обновить форму, чтобы принять правильный формат даты, чтобы скрыть код, который я создал, который будет через ошибку, если он меньше 24 часов с настоящего времени. Теперь форма:Дата установки Выбор формы php
<p>
\t \t \t <label for="date">Date:<span>*</span></label>
\t \t \t <span>
\t \t \t \t <input type="text" name="date" id="date" value="<?php $this->value('date'); ?>" size="25" />
\t \t \t </span>
\t \t </p>
<p>
\t \t \t <label for="time">Eat Time:<span>*</span></label>
\t \t \t <span>
\t \t \t \t <input type="text" name="time" id="time" value="<?php $this->value('time'); ?>" size="10" />
\t \t \t </span>
\t \t </p>
<p>
<label for="timedes">AM or PM:<span>*</span></label>
\t \t \t <span>
\t \t \t \t <select name="timedes" id="timedes">
\t \t \t \t \t <option value="0" <?php $this->value('timedes', '0', 'selected="selected"'); ?>>Select..</option>
\t \t \t \t \t <option value="AM" <?php $this->value('timedes', 'AM', 'selected="selected"'); ?>>AM</option>
\t \t \t \t \t <option value="PM" <?php $this->value('timedes', 'PM', 'selected="selected"'); ?>>PM</option>
\t \t \t \t </select>
\t \t \t </span>
\t \t </p>
код, который мне нужно будет изменить, чтобы проверить, если это менее чем за 24 часа или нет.
// define variables for date
date_default_timezone_set('America/New_York'); // timezone
$dateInput = '10/11/2015 15:54'; //date they selected string
$cateringDate = (strtotime("$dateInput")); // date selected converted to time
$dateNow = date('m/d/y H:i'); // current date and time string
$currenttime = (strtotime("$dateNow")); // current date and time converted
$dateAllowed = $currenttime + (86400); // current date and time 24 hours added on
$difference = $dateAllowed - $cateringDate; // date selected vs current date + 24hours
if ($cateringDate >= $dateAllowed) {
echo 'good job';
} else {
echo 'try again';
}
был бы способ сделать это вместо этого с требованием a.m. и p.m. выбор и 12-часовое время? что нужно будет изменить, чтобы правильно рассчитать или для того, чтобы его вычислить, это должно быть 24-часовое время? – jshbll
Strtotime довольно умный. Например, «2015-10-11 10 утра» будет работать. Вы также можете обратиться к [документации] (http://php.net/manual/en/datetime.formats.php) для получения дополнительных примеров – Viktoras
Это довольно удивительно благодаря тонне – jshbll