简体   繁体   English

我的PHP表更改了我数据库中的假行

[英]My php table changed the false row in my db

I'm a PHP beginner & have a question xd Whenever I click on the submit button, the data of the last user in the PHP table are changed. 我是PHP初学者,有一个问题xd每当我单击Submit按钮时,PHP表中最后一个用户的数据都会更改。

Could somebody check on it? 有人可以检查一下吗?

 <?php
foreach ($db->results() as $unpaid){

    ?>
    <form method="POST">
        <tr><td>
            <?=$unpaid->id?>
            <input type="hidden" name="user" value="<?=$unpaid->id?>">
            </td>
            <td><?=$unpaid->username?>
            </td>
            <td><?=$unpaid->bitcoinadress?></td>
            <td><?=$unpaid->points?></td>
            <td><?=$unpaid->requestdate?></td>
            <td><?=$unpaid->status?></td>
            <td>

            <input type="submit" class="btn btn-warning" name="submit" value="Submit" /><br/>

            </td>


            </tr>


<?php } ?>

<?php
if(isset($_POST['submit']))  
$id = $POST_['user'];
$db->update("payment_request", $id, ["status"=>"Paid"]);

?>

</form>
</table>

You can't put a <form> around a <tr> . 您不能在<tr>周围放置<form> <tr> You need to put the form inside one of the <td> tags. 您需要将表单放入<td>标记之一中。

<table>
<?php
foreach ($db->results() as $unpaid){
    ?>
    <tr>
        <td> <?=$unpaid->id?> </td>
        <td><?=$unpaid->username?> </td>
        <td><?=$unpaid->bitcoinadress?></td>
        <td><?=$unpaid->points?></td>
        <td><?=$unpaid->requestdate?></td>
        <td><?=$unpaid->status?></td>
        <td>
        <form method="POST">
            <input type="hidden" name="user" value="<?=$unpaid->id?>">
            <input type="submit" class="btn btn-warning" name="submit" value="Submit" /><br/>
        </form>
        </td>
    </tr>
    <?php } ?>

<?php
if(isset($_POST['submit']))  
    $id = $POST_['user'];
$db->update("payment_request", $id, ["status"=>"Paid"]);

?>
</table>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM