我正在尝试设置一个 html 表单,允许用户从下拉菜单中选择一个字段,然后指定该字段的信息。例如,如果他们从菜单中选择"名称",然后输入名称,则会发布特定的响应。
以下是 html 的外观:
<form action="hello.php" method="post">
<select>
<option disabled="yes" selected="yes">Select...</option>
<option value="name">Name</option>
<option value="gender">Gender</option>
<option value="birthday>Birthday</option>
<input name="name" type="text" />
<input type="submit" value="Submit">
</form>
我正在尝试做的是根据提交的内容让 php 代码更改响应。这是 php 代码:
$name = $_POST['name'];
$gender = $_POST['gender'];
$bday = $_POST['birthday'];
随着响应:
echo "Hello, $name!";
echo "Your gender is $gender!";
echo "Happy birthday on $birthday!";
取决于他们选择的选项。(我还没有完成if/elseif/else语句,因为我不确定它们是否受到信息接收方式的影响。
可以这样做吗?我知道我的代码在这个例子中只会返回$name,因为
<input name="name"...>
但我不知道是否可以通过下拉菜单识别文本字段的信息。我想使用Javascript可能是可能的,但我从未使用过Javascript,也不知道该怎么做。谢谢!
编辑:我找到了答案。我最终设定了
<input type="text" name="submit" />
在我的 HTML 代码中,以及
$submit = $_POST['submit'];
在我的 PHP 代码中。现在,如果我做一些诸如
echo $submit;
它返回我在 HTML 页面中输入的任何内容。再次感谢!
<form action="hello.php" method="post">
<select name="myselectbox">
<option disabled="yes" selected="yes">Select...</option>
<option value="name">Name</option>
<option value="gender">Gender</option>
<option value="birthday>Birthday</option>
<input name="name" type="text" />
<input type="submit" value="Submit" />
</form>
然后在 hello 中.php在文件顶部执行此操作。
var_dump($_POST);
这应该可以帮助您了解 HTML 表单和 PHP 回发表单处理程序之间的关系(在您的情况下 hello.php)