Задача состоит в следующем. Есть поле в форме, где нужно указывать дату. Необходимо вывести дату и номер дня недели, который соответствует выбранной дате. Написал следущее Код (Text): <form action="" method="post"> <input type="date" name="date_my" id="date"> <input type ="submit" value="OK"> </form> <?php if(isset($_POST['date_my'])){ $adate = $_POST['date_my']; } $weekday = date("w",$adate); echo $weekday; echo '<br>'; echo $adate; ?> Дата выводится та, которую указал пользователь, а вот номер дня возвращается текущий, а не того который будет на дату, выбранную пользователем. Не могу понять, как реализовать данную задачу.
Решил сам)) оказывается здесь необходимо использовать функцию strtotime(). В итоге рабочий код выглядит так Код (Text): <?php if(isset($_POST['date_my'])){ $adate = $_POST['date_my']; } $time = strtotime($adate); $date = date('w', $time); echo $date; echo '<br>'; echo $adate; ?>
зачем тебе 3 echo ? тег ?> ? $time ? $date ? --- Добавлено --- почему не проверяешь какой запрос пришел POST или не POST ?
в основном скрипте проверяю. это лишь тестовый. чтобы понять приходит или нет дата. Такой вопрос, имеем индексированный массив выходных дней, а также поле типа date на форме. Как сравнить выбранную в форме дату на предмет вхождения в массив с выходными днями? Код (Text): $date_p = array(0 => '01.01.2019', 1 => '02.01.2019', 2 => '03.01.2019', 3 => '04.01.2019', 4 => '05.01.2019', 5 => '06.01.2019', 6 => '07.01.2019', 7 => '08.01.2019', 8 => '23.02.2019', 9 => '08.03.2019', 10 => '01.05.2019', 11 => '02.05.2019', 12 => '03.05.2019', 13 => '09.05.2019', 14 => '10.05.2019', 15 => '12.06.2019', 16 => '04.11.2019', 17=>'31.12.2019');
Написал вот так Код (Text): <?php if(isset($_POST['date'])){ $date = $_POST['date']; } $date_p = array(0 => '01.01.2019', 1 => '02.01.2019', 2 => '03.01.2019', 3 => '04.01.2019', 4 => '05.01.2019', 5 => '06.01.2019', 6 => '07.01.2019', 7 => '08.01.2019', 8 => '23.02.2019', 9 => '08.03.2019', 10 => '01.05.2019', 11 => '02.05.2019', 12 => '03.05.2019', 13 => '09.05.2019', 14 => '10.05.2019', 15 => '12.06.2019', 16 => '04.11.2019', 17=>'31.12.2019'); if (in_array($date, $date_p)){ echo "есть совпадения"; } else { echo "совпадений не найдено" } ?> но даже если указываю дату входящую в массив, все равно выводит "совпадений не найдено".