当点击提交按钮时,是否以单独的形式发送输入


Are inputs in separate forms sent when a submit button is hit?

我正试图在php中创建一个页面,该页面从数据库中提取行,显示它们,然后让查看器有机会对特定条目进行上投票或下投票。以下是一个片段:

echo("<form action='"vote.php'" method='"post'"> 'n");
echo("<INPUT type='"hidden'" name='"idnum'" value='"".$row[0]."'">");
echo("<INPUT type='"submit'" name='"up'" value='"Upvote.'">  'n");
echo("<INPUT type='"submit'" name='"down'" value='"Downvote'"> ");
echo("<form/>'n");

问题是,当我点击提交按钮时,发送的idnum的值是基于最下面的值。所以我的问题是,当按下提交按钮时,是否发送了页面上所有输入的值?

表单标记未正确关闭。您有<form/>,但应该是</form>

这使得整个页面成为一个表单,从而发送所有输入。对于一个正确关闭的表单,它只会在按下按钮所在的表单标签中发送输入。

虽然这对解决这个特定问题没有帮助,但我建议尽可能不要将标记与逻辑混合在一起。这更可读,也更可编辑:

<form action="vote.php" method="post">
    <input type="hidden" name="idnum" value="<?php echo $row[0]; ?>">
    <input type="submit" name="up" value="Upvote.">
    <input type="submit" name="down" value="Downvote">
</form>

您的表单未正确关闭。使用</form>而不是<form/>

html的问题是应该有</form>,而不是<form/>