Оба.
Вам абсолютно необходимо проверить дату в PHP, потому что один или несколько ваших пользователей могли отключить Javascript.
Проверка Javascript хороша тем, что у вас может быть датавведите в элемент управления вводом, подтвердите его в обработчике onblur
и запишите проверенную дату обратно в элемент управления.Таким образом, после того, как пользователь вводит дату рождения 2/5/01 и покидает элемент управления, дата изменяется на 2 мая 2001 года, и пользователь не только знает, что дата интерпретирована правильно, но и strtotime()
также получает однозначное значение.
С точки зрения UX вы также можете использовать гораздо лучшие отзывы о проверке.Javascript может делать следующее (что, вероятно, хорошо известно, но мне понадобилось немного времени, чтобы найти его).Поместите элемент на страницу, например
<div id="DobReply"></div>;
. Тогда функция, которая проверяет дату рождения, может выполнять
document.getElementById("DobReply").innerHTML = "Current age is "+age;
, где age - это переменная, рассчитанная на основе введенной даты рождения,и сегодняшняя дата.Как только пользователь покидает элемент управления, выскакивает вычисленный возраст, и если пользователь ввел текущий год (это происходит), он может сразу обнаружить ошибку.
Так что я не избавлюсь от datejsпроверка либо.Но все это теряется, если Javascript отключен, вы можете получить недопустимые даты, даты в странных форматах или что-то еще.Так что, если вы можете иметь только один, оставьте strtotime()
.