<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title> Birthday </title>
<?php
if(isset($_POST["birthday"]))
$birthday = $_POST["birthday"];
else
$birthday = 1;
function calculate_age($birthday){
list($day, $month , $year) = explode("/", $birthday);
$day_diff = date("d") - $day;
$month_diff = date("m") - $month;
$year_diff = date("Y") - $year;
if($month_diff < 0){
$year_diff--;
}
else if(($month_diff == 0) && ($day_diff < 0)){
$year_diff--;
}
else if (($month_diff == 0) && ($day_diff == 0)){
echo "<script type='text/javascript'>alert('Happy
Birthday!!!');</script>";
}
return $year_diff;
}
$finalBirthday=calculate_age($birthday);
?>
</head>
<body>
<h1>Birthday Calculator</h1>
<form name="Birthday" method="POST" action="birthday.php">
<label>What is your Birthday?</br></label>
<input type ="text" name = "birthday" VALUE = "DD/MM/YYYY"></br>
<input type ="submit" name = "submit" VALUE = "Submit"></br>
</form>
<?php
echo "Our Birthday Calculator says you are " .$finalBirthday;
?>
</body>
</html>
我想知道爲什麼第一次運行它,它提出了「我們的生日計算器說你是2017年」。生日計算器
然而,在實際日期後,PHP工作正常。
任何幫助將不勝感激。
因爲'$生日= 1;'。使用調試器或echo來查看'$ day_diff = date(「d」) - $ day;'等內容是 – Jens
php'if else'語句是否正常工作?以前從未見過它。如果沒有使用大括號,我會看到它使用像'if(isset($ _ POST [「birthday」])): $ birthday = $ _POST [「birthday」];其他: $ birthday = 1; endif;'注意':'和最後的endif; –