学习php,我必须编写这个基本脚本:
<!DOCTYPE html>
<html>
<head>
<title>Whats My Age</title>
</head>
<body>
<form method="get">
Year of Birth: <input type="text" name="age" />
<input type="submit" name="submit" />
</form>
<?php
function isNegative()
{
if ($_GET['age'] < 0)
{
echo "Invalid Number";
}
}
isNegative();
function showMsg()
{
if (is_numeric($_GET['age']) && ($_GET['age'] >= 1) && isset($_GET['submit']))
{
$year = htmlentities($_GET['age']);
$asd1 = $year + 1900;
$today = date('Y');
$now = $today - $asd1;
echo "You are " . $now . " years old";
}
}
showMsg();
?>
</body>
</html>
有两个问题
在用户在输入中写入内容之后,如何运行脚本,因为从打开文件的那一刻起,它就会出现$_GET['age']
未定义的错误,这显然是这样或者我不应该担心这是唯一的服务器端和前端的东西会解决这个问题吗?出于同样的原因,如果我将代码放在函数外的showMsg()
并放置else {}
语句,则else会在页面打开时运行。
我应该转换一个简短的用户输入,例如 - &#34; 58&#34;到了1958年这一整年。我发现问题就好了但是好像用户输入了01,例如,如果1901年或2001年的话,脚本怎么知道,这可能是任务条件下的一个问题?