-1

嗨,有人可以告诉我为什么“表格二在这里”消息没有显示在以下代码中吗?我在以下结构中编写了一个冗长的代码。谢谢您的帮助

<DOCTYPE html>
<html>
<head><title></title>
</head>
<body>
<div id="one" style="width:300px; background:gray;">
<form method="post" action="<?= $_SERVER['PHP_SELF'] ?>">
<input type="text" name="txt1" id="txt1">
<input type="submit" name="sendone" id="sendone" value="One">
</form>
</div>

<div id="two" style="width:300px; background:yellow;">
<?php
if(isset($_POST['sendone']))
{echo "<input type='submit' name='sendtwo' id='sendtwo' value='Two'>";}

if(isset($_POST['sendtwo']))
{echo "Form two is here!"; return;}
?>
</div>
</body>
</html>
4

2 回答 2

1

在您的表格中,您只有一个字段“sendone”。另一个放在表格之外。

提交第一个表单后,您将在 HTML 代码中插入第二个输入字段,但将其放置在表单标签之外。这就是为什么当您第二次提交表单时它不在请求中的原因。所有输入字段都应在开始和结束表单标记内,以便进行处理。

您应该将第二个表单输入放在“表单”标签中:

<DOCTYPE html>
<html>
<head><title></title>
</head>
<body>
<div id="one" style="width:300px; background:gray;">
<form method="post" action="<?= $_SERVER['PHP_SELF'] ?>">
<input type="text" name="txt1" id="txt1">
<?php
if(isset($_POST['sendone']))
{echo "<input type='submit' name='sendtwo' id='sendtwo' value='Two'>";}
?>
<input type="submit" name="sendone" id="sendone" value="One">
</form>
</div>

<div id="two" style="width:300px; background:yellow;">
<?php
if(isset($_POST['sendtwo']))
{echo "Form two is here!"; return;}
?>
</div>
</body>
</html>
于 2013-05-19T14:31:35.137 回答
0

sendtwo 不在您的表单中,也没有名为 sendtwo 的表单提交按钮

<form method="post" action="<?= $_SERVER['PHP_SELF'] ?>">
    <input type="text" name="txt1" id="txt1">
    <input type="text" name="sendtwo" value="I am sendtwo!">
    <input type="submit" name="sendone" id="sendone" value="One">
</form>
于 2013-05-19T14:33:28.503 回答