php strtotime проблемы - PullRequest
       7

php strtotime проблемы

0 голосов
/ 01 декабря 2009

Хорошо, я понимаю это:

mm/dd/yyyy - 02/01/2003  - strtotime() returns : 1st February 2003
    mm/dd/yy   - 02/01/03    - strtotime() returns : 1st February 2003
    yyyy/mm/dd  - 2003/02/01 - strtotime() returns : 1st February 2003
    dd-mm-yyyy - 01-02-2003  - strtotime() returns : 1st February 2003
    yy-mm-dd   - 03-02-01    - strtotime() returns : 1st February 2003
    yyyy-mm-dd - 2003-02-01  - strtotime() returns : 1st February 2003

Итак, мой вопрос: как настроить строку на html-странице, чтобы принять возраст пользователя?

У меня могла бы быть только одна коробка, которая подсказывает пользователю

за месяц, день и год

или я мог бы разделить это

, но не правда ли, что strtotime будет ожидать строку, поэтому имеет ли это значение.

Ответы [ 2 ]

2 голосов
/ 01 декабря 2009

Если вы пытаетесь сделать это строго на PHP, есть способы обработки дат ... В большинстве случаев strtotime () работает, но кто-то может ввести странный формат. В этом случае может быть разумно разделить ваши входные данные на 3 текстовых поля MM / DD / YYYY, затем выполнить обработчик $ _POST и фактически сгенерировать время с помощью mktime () (http://us.php.net/mktime).

Если бы мне пришлось выбирать, я бы определенно пошел по пути javascript для удобства пользователей. Упрощает для пользователя получение формата в два клика, а не ввод даты и тому подобное, и позволяет немного меньше кодировать для вас:

http://www.jqueryui.com/demos/datepicker/

Пример:

<script type="text/javascript">
$(function() {
    $("#datepicker").datepicker();
});
</script>



<div class="demo">

<p>Date: <input type="text" id="datepicker"></p>

</div><!-- End demo -->

<div class="demo-description" style="display: none; ">

<p>The datepicker is tied to a standard form input field.  Focus on the input (click, or use the tab key) to open an interactive calendar in a small overlay.  Choose a date, click elsewhere on the page (blur the input), or hit the Esc key to close. If a date is chosen, feedback is shown as the input's value.</p>

</div><!-- End demo-description -->

PHP будет обрабатывать strtotime, который даст вам секунды с начала эпохи. Затем вы можете сохранить это в своей базе данных (int) и затем использовать date ('F d, Y', $ time); для отображения даты в секундах.

2 голосов
/ 01 декабря 2009

Посмотрите на любую форму ввода на веб-сайте, где важна дата / время, например, при бронировании билетов ... она будет:

а) предоставить пользователю необходимый формат «ДД / ММ / ГГ» и т. Д.

б) иметь проверку с помощью JavaScript

c) при желании можно выбрать дату для выбора точки и щелчка.

это позволяет вам убедиться, что формат правильный для вашей серверной интерпретации. и, возможно, использовать более сильные функции, чем strtotime.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...