javascript - 未定义索引:XAMPP 中的名称
问题描述
这是第一页:Index.php
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<title>Index</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
<form name="Index" action="Result.php" method="POST">
Username: <input type="text" name="username" id="username" autocomplete="off"><br><br> 1. I identify my gender as... <br>   
<input type="radio" name="gender" value="male">Male<br>   
<input type="radio" name="gender" value="female">Female<br>   
<input type="radio" name="gender" value="others">Others<br><br>
<INPUT Type="submit" Value="Proceed" Onclick="Index.action='Test2.php'; return true;">
</form>
</body>
</html>
<?php
session_destroy();
?>
这是第二页:Test2.php
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<title>Test2</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
<form action="Result.php" method="POST">
2. What is your age?<br>   
<input type="radio" name="age" value="14years">Under 14 years old<br>   
<input type="radio" name="age" value="15years">15-24 years old<br>   
<input type="radio" name="age" value="25years">25-59 years old<br>   
<input type="radio" name="age" value="60years">60-74 years old<br>   
<input type="radio" name="age" value="75years">Above 75 years old<br><br><br><br>
<INPUT Type="submit" Value="Proceed" Onclick="Index.action='Test3.php'; return true;">
</form>
</body>
</html>
<?php
session_destroy();
?>
这是第三页:Test3.php
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<title>Test3</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
<form action="Result.php" method="POST">
3. Please specify your ethnicity (race)<br>   
<input type="radio" name="race" value="chinese">Chinese<br>   
<input type="radio" name="race" value="malay">Malay<br>   
<input type="radio" name="race" value="indian">Indian<br>   
<input type="radio" name="race" value="others">Others<br><br>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
<?php
session_destroy();
?>
这是最后一页:Result.php
<?php
session_start();
?>
<html>
<head>
<title>Result</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
Welcome!
<?php echo $_POST["username"]; ?><br>
<?php
$gender = $_POST['gender'];
if ($gender == "others")
echo "<font size='5'>You are not normal</font><br><br>";
else
echo "<font size='5'>You are normal</font><br><br>";
$age = $_POST['age'];
if (($age == "60years") || ($age == "75years"))
echo "<font size='5'>You are old man</font><br><br>";
else
echo "<font size='5'>You are young man</font><br><br>";
$race = $_POST['race'];
if ($race == "others")
echo "<font size='5'>You are from other race</font><br><br>";
else
echo "<font size='5'>You are from one of three races</font><br><br>";
?>
</body>
</html>
<?php
session_destroy();
?>
所以,这是四个页面:Index.php -> Test2.php -> Test3.php -> Result.php 其中 Result.php 显示文本框和单选按钮的值(if...else)。但是当我运行这些页面时:Index.php 转到 Test2.php 并跳过 Test3.php 并直接转到 Result.php。在 Reslt.php 中,我得到了这个结果: 在此处输入图像描述
所以我该怎么做?我在互联网上搜索并尝试了不同的解决方案,但无法按预期工作。在那之后,我发现按钮可能有一些问题。所以,我再次去互联网寻找合适的解决方案,但没有这样做。现在我不知道该怎么做。一些代码解释将对我有很大帮助。谢谢 ;)
解决方案
您应该在每一页上获得所需的值,并将它们发布到下一页。
例如,在 中test2.php
,
$username = $_POST["username"];
$gender = $_POST['gender'];
<input type="hidden" name="username" id="username" value="<?php echo $username; ?>">
<input type="hidden" name="gender" id="gender" value="<?php echo $gender; ?>">