Kung nais mong ma-display ang kasalukuyang date sa
date
tag ng HTML, maaari mong gamitin ang PHP para ma-generate ang current date at ipasa ito bilang default value sa
date
input.
Narito ang isang halimbawa kung paano gawin ito:
HTML:
<input type="date" name="birthday" value="<?php echo date('Y-m-d'); ?>">
Sa halimbawang ito, ginamit ang
date
function ng PHP upang ma-generate ang current date sa format na "Y-m-d" (year-month-day). Ang generated na current date ay ipinasa bilang value sa
date
input, kaya't by default, ito ang magiging nakadisplay na date sa field.
Kapag na-submit na ang form, maaari mong gamitin ang PHP para i-validate ang input ng user, tulad ng nauna kong ipinakita. Maaaring gamitin ang
strtotime
function upang i-convert ang user input sa timestamp format at i-compare ito sa current timestamp, upang malaman kung future date ito o hindi.
Narito ulit ang halimbawang PHP code para sa validation, kasama ang pag-display ng current date sa
date
input:
PHP:
$currentDate = date('Y-m-d'); // Kunin ang current date galing sa server
$userInput = $_POST['birthday']; // Kunin ang user input
// I-convert ang user input sa timestamp format
$userTimestamp = strtotime($userInput);
// I-validate kung future date ang user input
if ($userTimestamp > strtotime($currentDate)) {
echo "Invalid date! Please enter a valid date.";
} else {
// I-save ang user input sa database o gawin ang iba pang operation
// ...
}
Sa halimbawang ito, nagamit ang
strtotime
function upang i-convert ang user input sa timestamp. Pagkatapos, tiningnan kung ang user timestamp ay mas malaki kaysa sa current timestamp. Kung tama ang kondisyon, ibig sabihin ay future date ito at ipinapakita ang mensaheng "Invalid date!". Kung hindi, maaaring ituloy ang ibang operasyon tulad ng pag-save sa database.
Ganito ang magiging workflow: ang current date ay ipapasa bilang default value sa
date
input. Kapag na-submit ang form, ang PHP code ang magva-validate kung valid ang user input at kung ito ay future date o hindi.