php - 无法使用 PHP 从一个页面获取信息到另一个页面

标签 php html select post

我有两个页面。一个带有选择框和发送按钮。当用户从选择框中选择他们的选项并单击发送时,它会将他们带到输出他们的选择的第二页。

date_change.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="style.css" rel="stylesheet" type="text/css" media="screen" />

</head>

<body>
<?php
$day = array(range(1,31));
$month = array(range(1,12));
$year = array(range(2011,2020));
?>
<form action="test.php" method="post">
Day:
<select >
  <?php foreach($day[0]++ as $key => $value) { ?>
    <option value="<?php echo $key ?>" name="day"><?php echo $value ?></option>
  <?php }?>
</select>
<br>
Month:
<select>
  <?php foreach($month[0]++ as $key => $value) { ?>
    <option value="<?php echo $key ?>" name="month"><?php echo $value ?></option>
  <?php }?>
</select>
<br>
Year:
<select>
  <?php foreach($year[0]++ as $key => $value) { ?>
    <option value="<?php echo $key ?>" name="year"><?php echo $value ?></option>
  <?php }?>
</select>
<input type='submit' value='send' name='send' />
</form>


</body>
</html>

一旦用户做出选择并点击“发送”,它将把他们带到 test.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="style.css" rel="stylesheet" type="text/css" media="screen" />

</head>

<body>

Date Selected: <?php echo $_POST["day"];echo $_POST["month"];echo $_POST["year"]; ?>

</body>
</html>

但是,即使转到 test.php 页面,它也不会显示用户选择的内容。有帮助吗?

我哪里错了?

最佳答案

你应该添加一个 name属性给你的 <select>标签而不是你的 <option>标签。

此外,您应该更改 <br><br />用于 XHTML 有效代码。

将您的代码更改为:

Day:
<select name="day">
  <?php foreach($day[0]++ as $key => $value) { ?>
    <option value="<?php echo $key; ?>"><?php echo $value; ?></option>
  <?php } ?>
</select>
<br />
Month:
<select name="month">
  <?php foreach($month[0]++ as $key => $value) { ?>
    <option value="<?php echo $key; ?>"><?php echo $value; ?></option>
  <?php } ?>
</select>
<br />
Year:
<select name="year">
  <?php foreach($year[0]++ as $key => $value) { ?>
    <option value="<?php echo $key; ?>"><?php echo $value; ?></option>
  <?php } ?>
</select>

关于php - 无法使用 PHP 从一个页面获取信息到另一个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5260569/

相关文章:

php - 请求readystate总是返回0?

php - 多行函数调用的左括号必须是最后一个内容

html - 事件按钮不应在悬停时改变颜色

html - 在 PICTURE 标签内缩放图像的正确方法是什么?

php - 无法将使用 php openssl 生成的 RSA key 导入到 windows CryptoAPI

php - mysql 在数组中的位置

html - 下拉菜单全部左对齐

javascript - getElementById selected 不能选择多个选项

javascript - 当我使用 Tab 键进入选择框中时,如何在选择框中显示选项?

mysql - 使用 mysql 和 mariadb 时的不同结果查询