嗨,有人可以告诉我为什么“表格2在这里”的消息没有显示在下面的代码中吗?我在以下结构中编写了一个冗长的代码。谢谢你的帮助
<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>
答案 0 :(得分: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>
答案 1 :(得分: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>