表单仅发送表单中的最后一行而不是选定的表格

时间:2014-01-20 19:06:04

标签: php

我有一个表,其中表中的每一行都有一个按钮,允许您从数据库中删除该特定行。虽然我的形式只提交了最后一行而没有我选择的那一行。请忽略已弃用的标签,并清楚这些问题。

<?php
                $result = mysql_query("SELECT * FROM booking");

                while($row = mysql_fetch_array($result))
                {

                ?>

                <form class='table-form' id='form' method='post'>

                    <tr>

                    <input id="bookid" type="hidden" name="bookid" value="<?php echo ($row['booking_id']); ?>" />

                    <td>

                    <?php echo ($row['booking_id']);?>

                    </td>
                    <td>
                        <?php echo ($row['user_id']); ?>
                    </td>
                    <td>
                        <?php echo ($row['event_id']); ?>
                    </td>
                    <td>
                        <?php echo ($row['payment_type']); ?>
                    </td>
                    <td>
                        <?php echo ($row['booking_date']); ?>
                    </td>
                        <center><button type="submit" id="submit" name="submit">Cancel</button><center>
                    <td>
                    </td>
                </tr>




                <?php
                }
                ?>


                </form>

            </table>
        </div>

        <?php


            if (isset($_POST['bookid'])){

                $id =  ($_POST['bookid']);

                $result = mysql_query("DELETE FROM booking
                WHERE booking_id = '$id'");

        }
?>

1 个答案:

答案 0 :(得分:0)

如果您更喜欢以这种方式进行编程,请将</form>移到

之上
<?php
}
?>

(循环身体)。

您的代码需要大量清理,样式清理和HTML验证。 :-P