Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP、MySQL和HTML的表单中存在错误_Php_Mysql_Html_Mysqli - Fatal编程技术网

使用PHP、MySQL和HTML的表单中存在错误

使用PHP、MySQL和HTML的表单中存在错误,php,mysql,html,mysqli,Php,Mysql,Html,Mysqli,伙计们。我的应用程序还可以,直到我得到了下面写的这种形式。此表中有2项,ID为“1”和“2”。尽管如此,如果我在“1”ID项上按“提交”,它每次都会打印“2”。有人知道问题出在哪里吗?多谢各位 <form method="POST"> <?php $query = "SELECT * FROM table"; while($row = $query->fetch_array()) { $id = $row['id'];

伙计们。我的应用程序还可以,直到我得到了下面写的这种形式。此表中有2项,ID为“1”和“2”。尽管如此,如果我在“1”ID项上按“提交”,它每次都会打印“2”。有人知道问题出在哪里吗?多谢各位

<form method="POST">
    <?php
    $query = "SELECT * FROM table";
    while($row = $query->fetch_array())
    { 
        $id = $row['id'];
    ?>

    <input type="hidden" name="id" value="<?php echo $id; ?>" >
    <input type="submit" name="submit">

   <?php } ?>

</form>

<?php
if(isset($_POST['submit']))
{
    echo $_POST['id'];
}
?>


您正在以相同的名称将两个项目输出到相同的表单中。单击“提交”按钮时,它会根据“名称”属性收集表单中的所有字段,并将其发送到发布表单的任何位置

如果您想使用一个按钮提交每个ID,并使用一个单独的按钮,那么您可以尝试为每个ID创建一个新表单。也可以使用其他方法,但根据您当前的代码,请尝试以下操作:

<?php
    $query = "SELECT * FROM table";
    while($row = $query->fetch_array())
    { 
        $id = $row['id'];
    ?>
    <form method="POST">
        <input type="hidden" name="id" value="<?php echo $id; ?>" >
        <input type="submit" name="submit">
    </form>
   <?php } ?>

<?php
if(isset($_POST['submit']))
{
    echo $_POST['id'];
}
?>