W samym HTML nie ma domyślnej metody wstawiania dzisiejszej daty w pole wejściowe. Jednak, jak każde inne pole wejściowe, zaakceptuje wartość.
Możesz użyć PHP, aby pobrać dzisiejszą datę i wprowadzić ją do pola wartości elementu formularza.
<?php
// Fetch the year, month and day
$year = date(Y);
$month = date(m);
$day = date(d);
// Merge them into a string accepted by the input field
$date_string = "$year-$month-$day";
// Send to the browser the input field with the value set with the date string
echo "<input type='date' value='$date_string' />";
?>
Pole wartości przyjmuje format YYYY-MM-DD jako dane wejściowe, więc po prostu tworząc zmienną $date_string
w tym samym formacie, w którym wartość wejściowa akceptuje i wypełnia ją rokiem, miesiącem i dniem pobranym od dzisiejszej daty i voila! Masz wybraną datę!
Mam nadzieję że to pomoże :)
Edytować:
Jeśli chcesz, aby pole wejściowe było zagnieżdżone w HTML zamiast w PHP, możesz wykonać następujące czynności.
<?php
// Fetch the year, month and day
$year = date(Y);
$month = date(m);
$day = date(d);
// Merge them into a string accepted by the input field
$date_string = "$year-$month-$day";
?>
<html>
<head>...</head>
<body>
<form>
<input type="date" value="<?php print($date_string); ?>" />
</form>
</body>
</html>
Zdaję sobie sprawę, że to pytanie zostało zadane jakiś czas temu (2 lata temu), ale nadal zajęło mi trochę czasu znalezienie ostatecznej odpowiedzi w Internecie, więc służy to każdemu, kto szuka odpowiedzi, kiedy tylko może, i mam nadzieję bardzo pomaga wszystkim :)
Kolejna edycja:
Prawie zapomniałem, czymś, co było dla mnie królewskim bólem w przeszłości, jest zawsze zapominanie o ustawianiu domyślnej strefy czasowej przy każdym tworzeniu skryptu w PHP, który korzysta z funkcji date ().
Składnia jest następująca date_default_timezone_set(...);
. Dokumentację można znaleźć tutaj na PHP.net, a listę obsługiwanych stref czasowych do wstawienia do funkcji można znaleźć tutaj . To zawsze było denerwujące, ponieważ jestem w Australii, wszystko jest zawsze odsunięte o 10 godzin, jeśli nie ustawiłem tego poprawnie, ponieważ domyślnie jest to UTC + 0000, gdzie potrzebuję UTC + 1000, więc bądź ostrożny :)